使用scipy.stats时出现错误。在导入scipy之后的脚本中。
AttributeError: 'module' object has no attribute 'stats'在脚本编辑器中,我可以在输入scipy后点击stats。在python控制台的下拉菜单中,我不能从下拉菜单中选择python.stats,它不在那里。我使用的是pandas 2.7和SciPy 0.13.0为什么?有什么已知的问题吗?
发布于 2014-03-02 02:42:12
对我的评论进行扩展(得到一个列出的答案)。
Scipy和许多其他大型包一样,不会自动导入所有模块。如果我们想使用scipy的子包,那么我们需要直接导入它们。
但是,一些scipy子包加载其他scipy子包,因此例如导入scipy.stats也会导入大量其他包。但我从不依赖于此来使子包在名称空间中可用。
在许多使用scipy的包中,首选模式是导入子包,以便按其名称提供它们,例如:
>>> from scipy import stats, optimize, interpolate
>>> import scipy
>>> scipy.stats
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'stats'
>>> scipy.optimize
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'optimize'
>>> import scipy.stats
>>> scipy.optimize
<module 'scipy.optimize' from 'C:\Python26\lib\site-packages\scipy\optimize\__init__.pyc'>发布于 2021-12-17 06:04:37
这是意料之中的。当您只导入scipy时,大多数子包都不会导入。它们有很多,有很多很重的扩展模块,需要花时间来加载。您应该始终显式导入要使用的子包。
https://stackoverflow.com/questions/22108017
复制相似问题