python 表示矩阵 numpy.array(), numpy.matrix() 和numpy.mat()
先看 numpy.array() 和 numpy.matrix 的区别
我们生成 ndarry A 和 matrix B
| numpy.array() | numpy.matrix() | |
|---|---|---|
| 维度 | 理论上任何维度 | 只能2维 |
| 转置 | A.T 或 A.transpose() | B.T 或 B.transpose() |
| 矩阵乘法 (点乘, dot product) (以乘以自身的转置为例) |
np.dot(A, A.T) 或 A@A.T | np.dot(B, B.T) 或 B@B.T 或 B*B.T |
| 元素乘法 (element-wise product, Hadamard product) (以乘以自身为例) |
np.multiply(A, A) 或 A*A |
np.multiply(B, B) |
numpy.matrix() 处于deprecate warnings, 将来有可能不再支持, 建议统一使用numpy.array() 处理矩阵.
numpy.mat(A) 产生ndarry A的矩阵形式的引用, 比如我们用C 来表示 A 的一个matrix引用

混合运算时会将ndarray自动转换成numpy.matrix:
)
当混合运算出现ndarray*matrix时, *遵循对matrix的定义, 为矩阵内积:


浙公网安备 33010602011771号