1

我正在尝试重现此处给出的示例: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'

所以 t 是一个 numpy.ndarray。但是如果我阅读文档,它应该是一个带有方法的对象。

你知道发生了什么吗?

4

1 回答 1

2

看来您可能在t某处用数组覆盖了变量。您的错误消息的意思是t没有numpy.ndarray方法ppft您打算导入的不应该是分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)
于 2013-09-13T14:40:14.607 回答