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的定义, 为矩阵内积:

posted @ 2022-03-06 23:23  pas_a_pas  阅读(146)  评论(0)    收藏  举报