1,numpy属性
import numpy as np
array=np.array([[1,2,3],
[4,5,6]])#建立数组
print(array.ndim)#查看维度
print(array.shape)#几行几列
print(array.size)#元素总数
结果直接输出2,(2,3),6
1,dtype定义矩阵元素的类型
例:a=numpy.array([],dtype=numpy.float) #还可以(int,int32,int64)位数越小占空间越小。
2, 生成矩阵np.zeros(n,m)//np.ones(n,m)生成n行m列的零//一矩阵
还有以下函数:
arrange(),linspace(),改变形状reshape()求和0是列1是行np.sum(b,axis=0)
import numpy as np
a=np.arange(12).reshape((3,4))
print(a)
b=np.linspace(1,10,6).reshape((2,3))#生成线段
print(b)
结果
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
[[ 1. 2.8 4.6]
[ 6.4 8.2 10. ]]
求最大np.max(b,axis=0)
求最小np.min(b,axis=0)
求a最小索引np.argmin(a)
求a最大的索引np.argmax(a)
求a平均值np.mean(a)/a.mean()/np.average(a)
求中位数np.median(a)
逐步累加np.cumsum(a)
相邻两个数之差np.diff(a)
判断非零np.nonzero(a)
逐行排序np.sort(a)
a矩阵转置np.transpose(a)/a.T
np.clip(a,n,m)a中元素大于m的变成m,小于n的变成n
将a矩阵变成一个列表a.flatten()遍历for item in a.flat
合并
将两个矩阵上下合并np.vstack((a,b))
将两个矩阵左右合并np.hstack((a,b))
给矩阵加维度a[np.newaxis,:]/a[:,np.newaxis](横/纵)
矩阵合并np.concatenate((a,a,a,a),axis=n)n=0(纵),1(横)
分割
分割矩阵均分np.split(a,n,axis=0/1)
不均分np.array_split(a,n,axis=0/1)
纵向分割np.vsplit(a,n)
横向分割np.hsplit(a,n)
复制
浅复制a=b//a is b……a,b是同一个矩阵
深复制b=a.copy()……a,b不是同一矩阵