numpy模块使用
有两个基本类,ndarray
与matrix
。
ndarray:为多维队列
matrix:为矩阵(是ndarray的子类,不推荐使用)
import numpy as np
arr = np.array([
[1, 2, 3],
[2, 3, 4]
])
如此,就生成了一个 2行3列 的多维数组
darray直接使用 +、-、*、/
是对其中每个元素做对应的运算。
若要使用 矩阵乘法
, 则需要使用 dot()
, 如: np.dot(arr1, arr2)
再求对应的 转置矩阵
时,可以直接使用 arr1.T
需要注意的是: 一维数组使用该方法无法转置,即[1, 2, 3, 4]这种无法转置,需要使用 np.c_[] 方法,
该方法用于添加 列
,在这里可以将一维数组转置 np.c_[arr1]
np.size():统计元素个数、行数、列数
>>> a = np.array([[1,2,3],[4,5,6]])
>>> np.size(a) # 6:统计的是 元素个数
6
>>> np.size(a,1) # 1:统计的是 列数
3
>>> np.size(a,0) # 0:统计的是 行数
2
np.mean():统计所有元素的平均值、每行的平均值、每列的平均值
>>> a = np.array([[1, 2], [3, 4]])
>>> np.mean(a)
2.5
>>> np.mean(a, axis=0) # axis=0:统计的是 每列的平均值
array([ 2., 3.])
>>> np.mean(a, axis=1) # axis=1:统计的是 每行的平均值
array([ 1.5, 3.5])
np.std():统计所有元素的标准差、每行的标准差、每列的标准差
>>> a = np.array([[1, 2], [3, 4]])
>>> np.std(a)
1.1180339887498949
>>> np.std(a, axis=0) # axis=0:统计的是 每列的标准差
array([ 1., 1.])
>>> np.std(a, axis=1) # axis=1:统计的是 每行的标准差
array([ 0.5, 0.5])
np.tile():将队列进行拓展,增加行数
>>> c = np.array([1,2,3,4])
>>> np.tile(c,(4,1)) # (4, 1)指的是对c进行拓展,增加4行,列数为1列(这个1列指的是c本身不拓展列数)
array([[1, 2, 3, 4],
[1, 2, 3, 4],
[1, 2, 3, 4],
[1, 2, 3, 4]])