我正在尝试重现此处给出的示例:http://jkitchin.github.io/blog/2013/02/12/Nonlinear-curve-fitting-with-parameter-confidence-intervals/
所以我导入了这样的模块:
from scipy.stats.distributions import t
但是当我尝试一个简单的
时 tval = t.ppf(1-alpha/2, dof)
我有例外:
AttributeError: 'numpy.ndarray' object has no attribute 'ppf'
所以这是一个numpy.ndarray。但是,如果我阅读文档,它应该是一个对象,使用方法。
你对发生的事情有所了解吗?
答案 0 :(得分:1)
看起来你可能已经用某个数组覆盖了变量t
。您的错误消息的含义是t
是numpy.ndarray
,没有ppf
方法。您要导入的t
不应该是ndarray
,而应该是分发生成器。
找到它成为数组的位置并在那里使用其他名称,或者使用更好的名称导入。
例如,尝试将导入行更改为:
from scipy.stats import distrbutions as dists
然后将问题行更改为:
tval = dists.t.ppf(1-alpha/2, dof)
可替换地:
from scipy.stats.distributions import t as tdist
tval = tdist.ppf(1-alpha/2, dof)