Python Numpy库纬度操作指南
陈婉璇 2023-09-12编程经验
什么是Numpy库?PythonNumpy(NumPyNumericPython的缩写)是一个基于Python语言的扩展程序库,支持大量高维数组和矩阵运算,尤其适用于科学计算和数据分析领域。NumPy库提供了快速的
什么是Numpy库?
Python Numpy(NumPy Numeric Python的缩写)是一个基于Python语言的扩展程序库,支持大量高维数组和矩阵运算,尤其适用于科学计算和数据分析领域。NumPy库提供了快速的数学函数处理、矩阵运算、线性代数、随机数生成等功能。NumPy中的核心对象是 ndarray,它是具有相同类型和大小的 n 维数组,可以高效地存储和操作数据。
import numpy as np
# 创建一维数组
a = np.array([1, 2, 3])
print(a)
# 创建二维数组
b = np.array([[1, 2], [3, 4]])
print(b)
输出结果如下:
[1 2 3]
[[1 2]
[3 4]]
如何操作Numpy数组的维度?
Numpy库提供了许多函数和方法来操作数组的维度,例如重塑、展平、合并等。其中,reshape()函数指定新的形状,resize()函数则直接修改原始数组:
import numpy as np
# 重塑数组维度
a = np.array([[1, 2], [3, 4], [5, 6]])
b = a.reshape((2, 3))
print(b)
# 修改数组尺寸
c = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
d = c.resize((3, 3))
print(d)
输出结果如下:
[[1 2 3]
[4 5 6]]
None
Numpy的维度转换函数
Numpy库提供了一些函数来转换数组的维度,包括 transpose()函数、flatten()函数以及 ravel()函数。transpose()函数用于交换数组的维度,flatten()函数返回一个一维数组,ravel()函数也返回一个一维数组,但它直接返回原始数组的视图(如果可能的话),而不是复制一个副本。
import numpy as np
# 转置数组
a = np.array([[1, 2], [3, 4], [5, 6]])
b = a.transpose()
print(b)
# 扁平化数组
c = np.array([[1, 2], [3, 4]])
d = c.flatten('C')
print(d)
# 拉平数组
e = np.array([[1, 2], [3, 4]])
f = e.ravel()
print(f)
输出结果如下:
[[1 3 5]
[2 4 6]]
[1 2 3 4]
[1 2 3 4]
数组组合与拆分操作
Numpy库提供了一些函数来组合和拆分数组,包括 concatenate()函数、vstack()函数和 hstack()函数。concatenate()函数可以沿着任意维度将多个数组堆叠在一起,vstack()函数将数组垂直堆叠在一起,hstack()函数将数组水平堆叠在一起。
import numpy as np
# 拼接数组
a = np.array([[1, 2], [3, 4], [5, 6]])
b = np.array([[7, 8], [9, 10], [11, 12]])
c = np.concatenate((a, b), axis=0)
print(c)
# 垂直组合数组
d = np.array([1, 2, 3])
e = np.array([4, 5, 6])
f = np.vstack((d, e))
print(f)
# 水平组合数组
g = np.array([1, 2, 3])
h = np.array([4, 5, 6])
i = np.hstack((g, h))
print(i)
输出结果如下:
[[ 1 2]
[ 3 4]
[ 5 6]
[ 7 8]
[ 9 10]
[11 12]]
[[1 2 3]
[4 5 6]]
[1 2 3 4 5 6]
很赞哦! ()