我有这个使用 numpy 数组进行矩阵乘法的例子:
import numpy as np
m = np.array([[1,2,3],[4,5,6],[7,8,9]])
c = np.array([0,1,2])
m * c
array([[ 0, 2, 6],
[ 0, 5, 12],
[ 0, 8, 18]])
如果 m 是 scipy 稀疏 CSR 矩阵,我如何做同样的事情?这给出了维度不匹配:
sp.sparse.csr_matrix(m)*sp.sparse.csr_matrix(c)
最佳答案
您可以调用csr_matrix
的multiply
方法进行逐点乘法。
sparse.csr_matrix(m).multiply(sparse.csr_matrix(c)).todense()
# matrix([[ 0, 2, 6],
# [ 0, 5, 12],
# [ 0, 8, 18]], dtype=int64)
关于python - Scipy 稀疏矩阵乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42537943/