-
史上最全的smd贴片型led封装矩阵运算介绍
资源介绍
2.3 矩阵运算
NumPy和Matlab不一样,对于多维数组的运算,缺省情况下并不使用矩阵运算,如果你希望对数组进
行矩阵运算的话,可以调用相应的函数。
matrix对象
numpy库提供了matrix类,使用matrix类创建的是矩阵对象,它们的加减乘除运算缺省采用矩阵
方式计算,因此用法和matlab十分类似。但是由于NumPy中同时存在ndarray和matrix对象,因
此用户很容易将两者弄混。这有违Python的“显式优于隐式”的原则,因此并不推荐在较复杂的
程序中使用matrix。下面是使用matrix的一个例子:
>>> a = np.matrix([[1,2,3],[5,5,6],[7,9,9]])
>>> a*a**-1
matrix([[ 1.00000000e+00, 1.66533454e-16, -8.32667268e-17],
[ -2.77555756e-16, 1.00000000e+00, -2.77555756e-17],
[ 1.66533454e-16, 5.55111512e-17, 1.00000000e+00]])
因为a是用matrix创建的矩阵对象,因此乘法和幂运算符都变成了矩阵运算,于是上面计算的是矩
阵a和其逆矩阵的乘积,结果是一个单位矩阵。
矩阵的乘积可以使用dot函数进行计算。对于二维数组,它计算的是矩阵乘积,对于一维数组,它计算
的是其点积。当需要将一维数组当作列矢量或者行矢量进行矩阵运算时,推荐先使用reshape函数将一
2.3. 矩阵运算 35