4
我想用标量乘以csr矩阵的单行。在numpy我会做对csr格式的scipy稀疏矩阵的行操作
matrix[indices,:] = x * matrix[indices,:]
对于csr这引起了scipy的例外。
有没有办法与csr矩阵类似地做到这一点?
我想用标量乘以csr矩阵的单行。在numpy我会做对csr格式的scipy稀疏矩阵的行操作
matrix[indices,:] = x * matrix[indices,:]
对于csr这引起了scipy的例外。
有没有办法与csr矩阵类似地做到这一点?
不,没有办法直接这样做,因为尽管您可以计算row * x
,但不能指定给CSR矩阵中的一行。您可以转换为DOK格式并返回,或直接在CSR矩阵的内部工作。该i
“日企业社会责任矩阵X
的排片
X.data[X.indptr[i] : X.indptr[i + 1]]
,你可以就地更新,即
X.data[X.indptr[i] : X.indptr[i + 1]] *= factor
(这显然适用于乘法和其它操作保持稀疏,但不是加法等)
效率低下?在我的SciPy 0.7.2上,这引发了一个例外。 – 2012-07-27 13:32:33
对不起,我说不清楚。编辑。 – 2012-07-27 14:07:22