python安装pip python -m pip install --upgrade pip
python 安装numpy pip install numpy
1. 数组的创建
a=array([1,2,3])或者a=array([(1,2,3),(4,5,6),(7,8,9)])或者a=array([[1,2,3],[4,5,6],[7,8,9]])
ones((3,4)) 创建内容全1的数组 zeros((2,3),dtype=int16) 内容全0 empty((2,3))内容随机
a=arange(1,2,0.1) 创建一个从1开始至2间隔为0.1的数组
a.size数组元素的个数
a.shape数组的形状
a.ndim数组轴的个数
a.dtype数组元素的类型
2.矩阵乘法
A=array([[1,0],[1,1]]) B=([[2,0],[3,4]]) dot(A,B)或者A.dot(B)
np.cumsum(A)计算A的累加。项的个数和A中的个数一样
np.diff(A) A的累差
np.argmin(A)输出A的最小值的索引
np.argmax(A)A的最大值的索引
np.mean(A) A.mean() np.average(A) A的均值
np.median(A) A的中位数
np.nonzero(A) A中非零的数 输出为两个array 第一个代表行数 第二个代表列数 组成了非零元素的索引
np.sort(A) 按行排序
A.T A的转置矩阵或者 np.transpose(A)
np.clip(A,5,9)A中小于5的数变成5,大于9 的数变成9
np的方法 都可以制定axis=0表示对列进行计算 axis=1对行进行计算
3、矩阵的索引
print(A[1][1]) 或者 print(A[1,1]) 输出A中第一行第一列的元素
print(A[1,:])输出A中第一行的元素
print(A[:,1])输出A中第一列的元素
print(A[1,1:3])输出A中第一行1到3的元素
for row in A:
print(row) 输出A中的每一行
for column in A.T:
print(column) 输出A中的每一列
for item in A.flat:
print(item) 输出A中的每个元素,
4.矩阵合并
A=([1,1,1])
print(A[np.newaxis,:].shape) 输出为(1,3)
print(A[:,np.newaxis].shape) 输出为(3,1)
A=np.array([1,1,1])[:,np.newaxis]
B=np.array([2,2,2])[:,np.newaxis]
C=np.vstack((A,B)) 上下合并
D=np.hstack((A,B)) 左右合并
C=np.concatenate((A,B,B,A),axis=1) axis=0表示在行上合并,axis=1表示列上合并
print(np.split(A,2,axis=1)) #对列分割
print(np.split(A,3,axis=0)) #对行分割
print(np.array_split(A,2,axis=0)) #不等量分割
print(np.split(A,2,axis=1)) #左右分割
print(np.split(A,3,axis=0)) #上下分割
print(np.vsplit(A,3)) #上下分割
print(np.hsplit(A,2)) #左右分割
b=a print(b is a) #true
b=a.copy()
print(b is a) #false deep copy