我的 scipy.sparse.linalg.eigs 怎么了?

What happens to my scipy.sparse.linalg.eigs?

我在 Anaconda 发行版中使用 python 2.7.8,但在 scipy 中遇到问题。 令 A 为稀疏矩阵;我想计算它的特征值,但如果我写:

import scipy
scipy.sparse.linalg.eigs(A)

我收到错误

    Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable

问题是什么? (scipy的版本是0.15.1)

这对你有用吗?

from scipy import sparse
import scipy.sparse.linalg as sp_linalg

B = np.random.rand(10,10)
A_dense = np.dot(B.T, B)
A_sparse = sparse.lil_matrix(A_dense)
sp_linalg.eigs(A_sparse, 3)

看来您必须显式导入子模块。 scipy 默认不加载那些。