Numpy是使用python进行科学计算的基础软件库。
它包括:
功能强大的N维数组对象
精密广播功能函数
集成C/C++和Fortran代码的工具
强大的线性代数、傅里叶变换和随机数功能
导入库
元素、向量、矩阵、
矩阵属性
加减乘除、立方、开根
最大值、最小值、平均值
矩阵乘法
元素获取
一、三个重要属性
dtype=data type
float,uint8 ,float32
shape
ndim
二、创建矩阵
X=np.array([1,2,3])
Y=np.uint8([1,1,1])
X.dtype(可查看x的类型)
np.float32(x)(可将x转换为float32类型的)
np.arange(10)(产生一个0-10的数组)结果:0,1,2,3,4,5,6,7,8,9,
np.arange(2,10)(产生2-10的数组)
np.arange(2,10,2)(数组2-10的数组,每次增加2)结果:2,4,6,8
np.linspace(0,10,11)(将0-10分成11份)结果:0,1,2,3,4,5,6,7,8,9,10的数组
np.linspace(0,2*np.pi,100)(0-2Π分为100份)
np.zeros(shape,dtype,order=’c’)
第一个参数是产生一个几乘几的矩阵
第二个产生是选择数据类型
例:np.zeros((2,4),dtype=np.int)
np.ones((3,3),dtype=np.float32)
创建单位矩阵
np.eye(3)创建一个3X3的单位矩阵
np.identity(4)创建4X4的单位矩阵
np.random.randint(low,high=None,size=None,dtype=int)
np.random.randint(0,255,(10,10),dtype=np.uint8)3
三、矩阵的转换(改变形状等等)
首先创建A矩阵
A=np.ones((3,3),dtype=np.uint8)
A.reshape((-1,9))创建1X9的矩阵这还是二维的
A.flatten()(将A矩阵拉成一维矩阵)复制
A.ravel()引用(将矩阵拉成一维矩阵)
矩阵转置
B.T
B.transpose()
矩阵水平堆叠
np.hstack([A,B])
矩阵竖直堆叠
np.vstack([A,B])
四、最大值、最小值、平均值
B.max()求矩阵最大值
B.min()求矩阵最小值
B.mean()求矩阵的平均值
也可以用np.max(B) np.min(B) np.mean(B)
B.max(axis=0)求每一列的最大值
B.max(axis=1)求每一行的最大值
五、数学运算
np.power(A,2)A矩阵的2次方
Np.power(A,0.5)A矩阵开根号
np.sqrt(B)开根号
Np.log2(B+1)求对数注意最好B里没有0,如果不确定就B+1
A@X矩阵乘法(不要用A*X)
A.dot(x)矩阵乘法
元素获取
B[0,:]取B的第0行
B[:,1]取B的第一列
B[1:,1:]取B矩阵的后面的矩阵
B[0,:]=np.array([1,1,1])对第0行进行赋值