scipy.sparse矩阵的逐点运算

han*_*nes 7 python scipy sparse-matrix

是否可以将一个numpy.exp或类似的逐点运算符应用于一个scipy.sparse.lil_matrix或另一个稀疏矩阵格式的所有元素?

import numpy
from scipy.sparse import lil_matrix

x = numpy.ones((10,10))
y = numpy.exp(x)

x = lil_matrix(numpy.ones((10,10)))
# y = ????
Run Code Online (Sandbox Code Playgroud)

numpy.exp(x)scipy.exp(x)产生一个AttributeError,并numpy.exp(x.data)产生相同的.

谢谢!

Oli*_*ier 6

我不知道完整的细节,但转换到另一种类型是有效的,至少在使用非零元素数组时:

xcsc = x.tocsc()
numpy.exp(xcsc.data) # works
Run Code Online (Sandbox Code Playgroud)

  • 是.正如文档http://docs.scipy.org/doc/scipy/reference/generated/scipy.sparse.lil_matrix.html中所述,lil格式主要用于构建不执行操作的稀疏数组的方法.文档建议在构建数组后进行此转换. (2认同)