从Scipy调用统计函数

34

这可能非常琐碎。

我想从scipy调用spearmanr函数:(数据只是示例)

import scipy
from numpy import *

Len = [2,3,5,7,2]
Pop = [5,2,6,3,2]

a = array(Len)
b = array(Pop)

print scipy.stats.spearmanr(a,b)

这会产生错误:

AttributeError: 'module' object has no attribute 'spearmanr'

我做错了什么?

谢谢

1个回答

53

使用 import scipy.stats。这样就可以工作了。导入一个包并不会自动导入所有子包/模块。在这些情况下,您必须显式地进行导入。


4
当你可以在单独导入os时访问os.path模块的成员时,为什么还需要这样做呢?os是否自动导入os.path - JAB
3
看起来是这样的。这取决于套餐。 - Björn Pollex
@Space_C0wb0y 嗯,当我尝试这个时,它给了我一个不同的错误...“通用包装器中没有匹配的架构”。你能发布一下你完整正确修改过的代码吗? - WillJones
@Will:你发布的代码,在我修改了import语句后,对我来说运行良好。这似乎是你的SciPy安装出了问题。 - Björn Pollex
3
@Jab:这是必需的,因为Scipy采用了惰性导入来缩短启动时间。 - Arne Babenhauserheide

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接