我试图获取一个对scipy稀疏矩阵的列切片的引用,并修改它。我尝试了以下操作,但切片似乎返回了一个副本而不是引用(就像numpy行为一样),因此原始矩阵没有被修改。
>>> import scipy.sparse as sp
>>> A=sp.csc_matrix((10, 100))
>>> B=A[:, 0:1]
>>> B[:,0]=1
>>> B
<10x1 sparse matrix of type '<class 'numpy.float64'>'
with 10 stored elements in Compressed Sparse Column format>
>>> A
<10x100 sparse matrix of type '<class 'numpy.float64'>'
with 0 stored elements in Compressed Sparse Column format>
1条答案
按热度按时间6yjfywim1#
我认为您需要先将dtype更改为ndarray。请尝试以下操作: