我有一个很大的 scipy sparse 矩阵
X
。y
,其元素数量与 X
的行数匹配。
我想计算每列乘以
y
后的总和。X
是稠密的,则相当于 np.sum(X * y, axis=0)
。
如何有效地处理稀疏矩阵?
我尝试过:
z = np.zeros(X.shape[1])
for i in range(X.shape[1]):
z[i] = np.sum(np.array(X[:, i]) * y)
但是速度非常慢。
有没有更好的方法来实现这个目标?
使用为稀疏矩阵提供的
dot
产品:
X.transpose().dot(y)
这应该更快