Python 有效地将大量SciPy稀疏矩阵项设置为零

Python 有效地将大量SciPy稀疏矩阵项设置为零,python,numpy,matrix,scipy,sparse-matrix,Python,Numpy,Matrix,Scipy,Sparse Matrix,我需要从SciPy稀疏矩阵中删减大量条目。 目前,我将矩阵转换为DOK格式并单独分配 将每个条目设置为0 m = m.todok() for i, j in pruneme: m[i,j] = 0 这是非常缓慢的 有没有更快的方法?只要不添加新的非零,只需使用元组订阅数组,就可以有效地设置CSR稀疏数组的元素: i, j = zip(*pruneme) # assuming that pruneme is a python list m[i, j] = 0. m.eliminate_zer

我需要从SciPy稀疏矩阵中删减大量条目。 目前,我将矩阵转换为DOK格式并单独分配 将每个条目设置为0

m = m.todok()
for i, j in pruneme:
  m[i,j] = 0
这是非常缓慢的


有没有更快的方法?

只要不添加新的非零,只需使用元组订阅数组,就可以有效地设置CSR稀疏数组的元素:

i, j = zip(*pruneme) # assuming that pruneme is a python list
m[i, j] = 0.
m.eliminate_zeros()

这应该比构建两个数组快得多。

通常
m
的格式是什么?@RolandW它从csr\u矩阵开始。