R中Gamma密度的最大似然估计

时间:2015-09-14 12:58:53

标签: r gamma mle

我只是用伽马密度模拟了100个randoms观测值,其中alpha(形状参数)= 5和lambda(速率参数)= 5:

x=rgamma(100,shape=5,rate=5)

现在,我想用一个函数返回alpha和lambda的最大似然估计值,该函数将返回两个参数并使用这些观察结果。

任何提示都会受到赞赏。谢谢。

1 个答案:

答案 0 :(得分:5)

您可以在fitdistr(...)包中使用MASS

set.seed(1)   # for reproducible example
x <- rgamma(100,shape=5,rate=5)

library(MASS)
fitdistr(x, "gamma", start=list(shape=1, rate=1))$estimate
#    shape     rate 
# 6.603328 6.697338 

请注意,对于这样的小样本,您无法获得很好的估算值。

x <- rgamma(10000,shape=5,rate=5)
library(MASS)    # may be loaded by default
fitdistr(x, "gamma", start=list(shape=1, rate=1))$estimate
#    shape     rate 
# 4.984220 4.971021 

fitdistr(...)也会返回估算值和对数似然值的标准误差。