2016-10-15 6 views
1

Я пытаюсь найти 95% доверительный интервал из 50 образцов. Размеры выборки в диапазоне от 2 до 600, а значения в каждом образце ограничены между 1 и 5. Ex:Байесовская оценка log-normal с использованием 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 или более имеют логарифмически нормальное распределение, где я использовал Зубцы для байесовской оценки логарифмически нормальные параметры, адаптированных от Джона К. 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 образцами < я получил крайние значения в верхнем пределе (например, 3000), который превысил максимально возможное значение среднего (например, 5). В случае размера выборки = 2, я получил ошибку ниже:

Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 
    NA/NaN/Inf in 'y' 

Я новичок в зазубрины и не могу понять, как решить эти проблемы. Я думаю, что для smaples < 10 дистрибутив больше не является логнормальным! Любые идеи? Спасибо

ответ

0

Сначала семантическая записка. Вы не используете JAGS для поиска средств выборки. Вы используете JAGS для поиска средств популяций, из которых возникли образцы. Если вы хотите найти средство выборки (log), вы можете просто взять среднее значение (логарифмы) выборки.

Теперь, если значения в каждом образце ограничены между 1 и 5 (из-за некоторого внешнего ограничения), тогда образец НИКОГДА не извлекается из лог-нормального распределения, которое по сути ставит массу вероятности над значениями больше пяти.

Давайте представим себе, что образцы возникают из логнормальной выборки (и потому не ограничены по своей сути между 1 и 5). Тогда JAGS просто говорит вам, что недостаточно информации, содержащейся в этом примере, чтобы получить хорошую оценку среднего значения населения, из которого она была нарисована. Я бы не стал беспокоиться о понимании ошибки, когда размер выборки равен двум, потому что буквально нет способа получить хороший вывод о значении совокупности из двух образцов. Это верно, даже если вы знаете, что население действительно логарифмически нормально распределено. И так как ваши популяции на самом деле не распределены в логах (они ограничены между 1 и 5), вся процедура вывода недействительна в любом случае.