背景
NumPy和Matlab不一样,对于多维数组的运算,缺省情况下并不使用矩阵运算,可以调用相应的函数对数组进行矩阵运算。或者使用numpy库提供了的matrix类,用matrix类创建的是矩阵对象,它们的加减乘除运算缺省采用矩阵方式计算,用法和matlab十分类似。不过一般用户很容易将NumPy中同时存在的ndarray和matrix对象弄混,一般不建议在大程序中使用。下面简单介绍python的多维数组怎么进行常用的矩阵运算,以及对应的matlab写法。
对应表
用法 | MATLAB | Python | 说明 |
---|---|---|---|
乘法 | A*B | A.dot(B) | |
点乘 | A.*B | A*B | |
计算X满足指定条件的元素个数 | numel(X) | X.size | |
返回矩阵X的行数 | size(X, 1) | X.shape[0] | |
返回矩阵X的列数 | size(X, 2) | X.s |