我想使用稀疏矩阵进行BOW特征表示。我从scipy尝试过coo_matrix,但它似乎不支持我想做的事情:
我想初始化一个全零的矩阵,然后在适当的时候将给定的条目更改为一个。但是当我尝试索引矩阵我认为我应该如何 - 例如myMatrix [0] [0] = 1(或者甚至是myMatrix [0] [0] [0] = 1) - 它会改变所有的值连续到1.我想只做一个条目1。
我可以使用numpy矩阵轻松完成此操作,但我想使用稀疏矩阵来提高空间效率。
答案 0 :(得分:4)
使用正确的sparse
类型有帮助。
from scipy import sparse
M = sparse.lil_matrix((10,10))
M[1,1] = 1
M[5,5] = 1
# <10x10 sparse matrix of type '<type 'numpy.float64'>'
# with 2 stored elements in LInked List format>
dok
也有效。 csr
建议使用lil
。 'coo'不能这样设置。一旦填充,很容易转换为另一种格式。