我試圖找出50個樣本均值的95%可信區間。樣品尺寸範圍從2至600,和每個樣品中的值是有界1和5之間 例如:使用JAGS對數正態分佈的貝葉斯估計
sample 1 = (1,3.5,2.8,5,4.6)
sample 2 = (1,5)
sample 3 = (4.1,1.1,5,3.5,2,2.4,...)
樣品具有10或更大的尺寸具有對數正態分佈,其中i用於JAGS爲貝葉斯估計數正態分佈適於從約翰K. Kruschke參數,與模型規格如下:
modelstring = "
model {
for(i in 1 : N) {
y[i] ~ dlnorm(muOfLogY , 1/sigmaOfLogY^2)
}
sigmaOfLogY ~ dunif(0.001*sdOfLogY , 1000*sdOfLogY)
muOfLogY ~ dunif(0.001*meanOfLogY , 1000*meanOfLogY)
muOfY <- exp(muOfLogY+sigmaOfLogY^2/2)
modeOfY <- exp(muOfLogY-sigmaOfLogY^2)
sigmaOfY <- sqrt(exp(2*muOfLogY+sigmaOfLogY^2)*(exp(sigmaOfLogY^2)-1))
}
"
該模型正常工作與樣品大小> 10。然而,用3 < =樣品< 10 i的上限得到極值(例如3000)超過平均值的最大可能值(例如5)。 在樣本量= 2的情況下,我得到了以下錯誤:
Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) :
NA/NaN/Inf in 'y'
我是新來JAGS並不能找出如何解決這個問題。我認爲smaples < 10分佈不再是對數正態分佈! 任何想法? 謝謝