【问题标题】:Parameters for fitted distribution拟合分布的参数
【发布时间】:2018-03-21 07:47:19
【问题描述】:

在为我的数据集搜索最佳拟合分布时,结果是具有以下参数的指数修正正态分布:

K=10.84, loc=154.35, scale=73.82 

Scipy 为我们提供了一种分析分布均值的方法:

  fitted_mean =  scipy.stats.exponnorm.stats(K=10.84, loc=154.35, scale=73.82, moments='mean') 

生成的 fit_mean=984,与我的数据集的平均值相同。但是,我不确定这告诉我什么。我认为 loc=154.35 是分布的平均值。

这两个是什么意思?如果我用最佳分布拟合数据,fited_mean (154.35) 不是新的唯一均值吗?

【问题讨论】:

  • 仅供参考:我得到fitted_mean954.5587999999999,而不是984。你的值是错字吗?
  • 是的,抱歉,这只是一个错字

标签: python numpy scipy statistics pymc3


【解决方案1】:

对于指数修正的正态分布,位置参数与均值相同。这适用于许多发行版。

看看wikipedia page for the exponentially modified Gaussian distribution。这与scipy.stats.exponnorm 的分布相同,但参数化不同。 wikipedia版本和scipy的参数映射为:

μ = loc
σ = scale
λ = 1/(K*scale)

维基百科页面说分布的平均值是 μ + 1/λ,就 scipy 参数而言,它是 loc + K*scale

当您将分布拟合到数据时,您发现

loc = 154.35
scale = 73.82 
K = 10.84

维基百科页面给出的平均值公式

loc + K*scale = 954.5587999999999

这是使用exponnorm的计算:

In [16]: fitted_mean = scipy.stats.exponnorm.stats(K=10.84, loc=154.35, scale=73.82, moments='mean')

In [17]: fitted_mean
Out[17]: array(954.5587999999999)

与维基百科公式的结果相匹配。

(您报告了fitted_mean = 984,但我认为这是一个印刷错误。)

【讨论】:

  • 感谢您澄清@Warren Weckesser。是的。这是一个错字。那么exponnonm分布中的loc参数只是一个位置参数,不是均值?但在正态分布等其他分布中,它是均值吗?
  • 是的,完全正确。另一个例子是Gumbel distribution:μ 是位置参数,但均值是 μ + βγ,其中 β 是尺度参数,γ 是 Euler-Mascheroni 常数。
猜你喜欢
  • 2012-08-02
  • 2017-11-02
  • 2019-03-05
  • 1970-01-01
  • 1970-01-01
  • 2014-07-01
  • 2014-03-03
  • 2021-03-18
  • 1970-01-01
相关资源
最近更新 更多