21 python numpy矩阵操作
numpy 矩阵库
- numpy中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,不是ndarray对象
- 矩阵中的元素可以是数字、符号或者数学式
- numpy和MATLAB不同,对于多维数组的运算,缺省情况下并不使用矩阵运算,希望对数组进行矩阵运算,可以调用ndarray对象相应的函数
矩阵的生成 matrix 函数
import numpy as np
x=np.matrix([[1,2,3],[4,5,6]])
y=np.matrix([1,2,3,4,5,6])
x[0,0]
Out[4]: 1
x[0][0]
Out[3]: matrix([[1, 2, 3]])
- matlib.empty()函数
numpy.matlib.empty(shape,dtype,order)
shape:定义新矩阵形状的整数或整数元组
Dtype:可选,数据类型
order:C(行序优先)或者 F(列序优先)
import numpy.matlib
import numpy as np
np.matlib.empty((2,2))
- matlib.zeros()创建以0填充的矩阵
- matlib.ones()创建以1填充的矩阵
- matlib.eye(n,M,k,dtype)创建单对角元素为1.其他位置0
其中n矩阵的行数,M矩阵的列数,默认为n(即默认单位阵),k对角线的索引,dtype数据类型
- matlib.identity()单位阵
- matlib.rand()创建给定大小的随机阵,随机填充的0-1
常用矩阵操作
矩阵与二维数组的转换
import numpy.matlib
import numpy as np
i=np.matrix('1,2;3,4')
j=np.asarray(i)
k=np.asmatrix(i)
矩阵转置
X是一个矩阵对象X.T即转置