2 csr矩阵的产品,形状正确

时间:2018-02-14 16:26:02

标签: scipy linear-algebra

我需要将2个csr矩阵与形状A相乘:(385019,72)B:(72,385019)。我确实看到A的列数是72,这恰好是B中的行数。但是当我执行sparse.csr_matrix(A).multiply(sparse.csr_matrix(A))时,我得到ValueError: inconsistent shapes 我已经通过其他帖子,但没有任何帮助我。 Very large matrices using Python and NumPy

1 个答案:

答案 0 :(得分:3)

您正在寻找的乘法被称为"点积"在python中,您可以按照以下方式执行此操作

sparse.csr_matrix(A) * sparse.csr_matrix(B)

但是,在您描述的问题中使用sparse.csr_matrix(A).multiply(sparse.csr_matrix(A))的乘法被称为"通过另一个矩阵,向量或标量"逐点乘法。这意味着如果A和B都是矩阵,A的每个元素都将乘以B的每个元素;在这种情况下,A和B的大小必须相同。如果B是标量,那么A的每个元素都将乘以B.