2014-01-07 181 views
1

我無法計算泊松分佈的最大似然估計量和BIC ..我能夠得到直方圖但不能在其上疊加核密度估計。擬合泊松分佈

你能告訴我我哪裏出錯了嗎?

x.pois<-rpois(Y1, 20) 
hist(x.pois, breaks=100,freq=FALSE) 
lines(density(Y1, bw=0.8), col="red") 
library(MASS) 
fitdistr(Y1,densfun="pois") 
my.mle<-fitdistr(Y1, densfun="poison") 
print(my.mle) 
BIC(my.mle) 
+0

什麼是對象'Y1'? –

+3

毒性代碼?推測你的意思是「泊松」而不是「毒藥」。 – James

+0

請注意,它被認爲是更好的形式來[編輯你現有的問題](http://meta.stackexchange.com/questions/171803/new-question-or-edit-existing-question-with-new-sample-code? lq = 1),而不是[問一個新的,幾乎相同的](http://stackoverflow.com/questions/20984577/poisson-distribution-in-r)... –

回答

11

您需要(1)正確拼寫「poisson」; (2)使用x.pois(泊松樣本),而不是Y1(根據您的代碼示例,應該是您嘗試採樣的點數)。

請注意,離散分佈的核密度估計值和直方圖不一定很有意義。

Y1 <- 100 
set.seed(101) ## for reproducibility 
x.pois<-rpois(Y1, 20) 
hist(x.pois, breaks=100,freq=FALSE) 
lines(density(x.pois, bw=0.8), col="red") 
library(MASS) 
(my.mle<-fitdistr(x.pois, densfun="poisson")) 
##  lambda 
## 20.6700000 
## (0.4546427) 
BIC(my.mle) 
## [1] 572.7861 

更新your other question清楚地表明,Y1真的是你的樣品,在這種情況下,整個rpois() -sampling事情僅僅是一個紅色的鯡魚。在這種情況下,您應該忽略前三行,並在上面的代碼中將Y1替換爲x.pois