scipy.stats
模块中可用的分布具有fit
方法(http://docs.scipy.org/doc/scipy/reference/stats.html)来估计给定输入数据的分布参数。有没有办法获得拟合参数的协方差矩阵,还是我必须求助于使用scipy.optimize.curve_fit
?
问问题
1413 次
1 回答
1
参数估计的协方差需要 Hessian 进行最大似然估计,这在 scipy.stats 中不可用。
statsmodels 有一个通用的最大似然类,我正在修复它,以便它可以处理这样的情况。(我正在准备拉取请求。固定参数比 scipy.stats.distribution 更难处理。)
http://statsmodels.sourceforge.net/devel/examples/generated/example_gmle.html
mod_par = MyPareto(data)
res = mod_par.fit()
print res.summary()
MyPareto Results
==============================================================================
Dep. Variable: y Log-Likelihood: -149.32
Model: MyPareto AIC: 306.6
Method: Maximum Likelihood BIC: 317.1
Date: Sat, 29 Jun 2013
Time: 11:17:43
No. Observations: 100
Df Residuals: 97
Df Model: 3
==============================================================================
coef std err z P>|z| [95.0% Conf. Int.]
------------------------------------------------------------------------------
shape 2.8604 0.286 10.000 0.000 2.300 3.421
loc -1.2970 4.48e-06 -2.9e+05 0.000 -1.297 -1.297
scale 3.3032 8.06e-06 4.1e+05 0.000 3.303 3.303
==============================================================================
于 2013-06-29T15:30:49.903 回答