矩阵
矩阵是numpy.matrix类型的对象,该类继承自numpy.ndarray,任何针对多维数组的操作,对矩阵同样有效,但是作为子类矩阵又结合其自身的特点,做了必要的补充,比如:乘法计算、求逆等
1、矩阵对象的创建
#等价于:numpy.matrix(...,copy= False)#由该函数创建的矩阵对象与参数中的源容器一定共享数据,无法拥有独立的数据拷贝# numpy.mat(任何可被解释为矩阵的二位容器)#该函数可以接受字符串形式的矩阵描述#数据项通过空格分隔。例如:'1 2 3 ;4 5 6'#numpy.mat(拼块规则)
# 创建matrix操作import numpy as nparr = np.arange(1,10).reshape(3,3)arr#第一种方式m = np.matrix(arr,copy=True)mm.shapetype(m)#第二种方式:共享方式m2 = np.mat(arr)m2#第三种方式m3 = np.mat("1 2 3;4 5 6;7 8 9")m3
matrix([[1, 2, 3],[4, 5, 6],[7, 8, 9]])
2、矩阵的乘法运算
#矩阵乘法import numpy as nparr = np.array([[1,2,3],[2,2,2],[3,3,3]])#数组相乘,各对应位置元素相乘arr# #矩阵相乘,第n行*m列之和,作为结果的 n,m个元素# #矩阵相乘,第一个矩阵列数必须等于第二个矩阵的行数# m = np.mat(arr)# m*m
array([[1, 2, 3],[2, 2, 2],[3, 3, 3]])
#矩阵乘法import numpy as nparr = np.array([[1,2,3],[2,2,2],[3,3,3]])#数组相乘,各对应位置元素相乘arr#矩阵相乘,第n行*m列之和,作为结果的 n,m个元素#矩阵相乘,第一个矩阵列数必须等于第二个矩阵的行数m = np.mat(arr)m*m
matrix([[14, 15, 16],[12, 14, 16],[18, 21, 24]])
3、矩阵的逆矩阵
