前言
NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
基本使用方法
数组创建
全0数组
np.zeros((2,2))
全1数组
np.ones((4,4))
随机数组
np.random.randint(0, 10, (3,2))
数组属性
数组维度,元素个数
a=np.random.randint(0, 10, (3,2))
a.shape
a.size
数组的维度操作(将数组的行变列,返回最后一个元素,返回第2到第4个元素,返回逆序的数组)
a.T
a[-1]
a[2:4]
a[::-1]
数组的合并(数组的水平合并,垂直合并,深度合并)
a = np.arange(9).reshape(3,3)
b = np.arange(9).reshape(3,3)
np.hstack(a,b)
np.vstack(a,b)
np.dstack(a,b)
数组的拆分(数组的水平拆分,垂直拆分,深度拆分)
a = np.arange(9).reshape(3,3)
b = np.arange(9).reshape(3,3)
c = np.dstack(a, b)
np.hsplit(a,3)
np.vsplit(a,3)
np.dsplit(c,2)
数组运算(与常的四则运算,与数组的四则运算,判断数组是否相等)
a = np.arange(4, dtype=np.float32).reshape(2,2)
b = np.arange(4, 8, dtype=np.float32).reshape(2,2)
a+b; a*b; a/b; a==b
内积运算,逆矩阵运算
a = np.arange(4, dtype=np.float32).reshape(2,2)
b = np.arange(4, 8, dtype=np.float32).reshape(2,2)
a.dot(b) # 内积运算
A = np.matrix(a); A
A_ = A.I; A_ # A的逆矩阵
A_.dot(A) # 验证是否内积为单位矩阵
数组的常用函数(数组所有元素的和、积、平均值、最大值、最小值、元素替换、方差、标准差)
a = np.array([5,4,3])
a.sum()
a.prod()
a.max()
a.min()
a.clip(1,2)
a.var()
a.std()