我有一个稀疏矩阵:
from scipy import sparse
a = sparse.diags([1,4,9],[-1,0,1],shape =(10,10),format ="csr")
我想取稀疏矩阵中每个元素的平方根 我查看了互联网,它说我可以使用numpy.sqrt()来实现这一点。 但是错误发生了:
b = numpy.sqrt(a)
AttributeError: sqrt
我该怎么办?
答案 0 :(得分:2)
警告,这将创建一个结果numpy ndarray而不是稀疏的csr数组。
from scipy import sparse
a = sparse.diags([1,4,9],[-1,0,1],shape =(10,10),format ="csr")
numpy.sqrt(a.data)
据我所知,除了sqrt之外,大多数其他ufunc操作(sin,cos,...)都有稀疏的ufunc,不知道原因。请参阅此问题:https://github.com/scipy/scipy/pull/208
答案 1 :(得分:1)