我有一个大的(60,000 x 60,000)对称文档相似度矩阵,以scipy稀疏csr_matrix格式存储。
我想找到超过某个值的所有值的索引。换句话说,所有文档对的相似度得分都大于某个值。
当我尝试类似
时matrix > 0.9
我的ipython内核崩溃了。
我是scipy和numpy的新手,所以任何帮助都会非常感激。
答案 0 :(得分:1)
我会尝试对较小的数据集执行操作 我刚试过
In [22]: import scipy.sparse as sps
In [23]: m = sps.csr_matrix(np.random.rand(100,100))
In [24]: m
Out[24]:
<100x100 sparse matrix of type '<type 'numpy.float64'>'
with 10000 stored elements in Compressed Sparse Row format>
In [25]: m > .5
Out[25]:
<100x100 sparse matrix of type '<type 'numpy.bool_'>'
with 5028 stored elements in Compressed Sparse Row format>
所以这似乎有效。也许你的矩阵太大/太密集了。你自己修建了scipy吗?也许有一个构建错误导致它崩溃。
你的操作系统/版本的python / scipy版本是什么?
import scipy
scipy.__version__