Как я могу смоделировать переменную отклика из уже установленной модели?

Я уже подогнал регрессионную модель с помощью JAGS.

model{
    for(i in 1:n) {
        y[i] ~ dbeta(alpha[i], beta[i])
        alpha[i] <- mu[i] * phi[i]
        beta[i]  <- (1 - mu[i]) * phi[i]
        log(phi[i]) <- -inprod(X2[i, ], delta[])
        cloglog(mu[i]) <- inprod(X1[i, ], B[])
    }

    for (j in 1:p){
        B[j] ~ dnorm(0, .001)
    }

    for(k in 1:s){
        delta[k] ~ dnorm(0, .001)
    }
}

Но мне нужно смоделировать 50 выборок переменной отклика, каждая из которых имеет размер, чтобы сделать несколько графиков. Как мне это сделать?

Я нашел этот поток небольшой помощи

Должен ли я запустить цепочку снова, учитывая значения апостериорных оценок, которые у меня уже есть в качестве исходных значений?


person Roland    schedule 27.05.2017    source источник


Ответы (2)


Я предполагаю, что вашими данными являются y, X1 и X2.
Вы можете добавить 50 строк данных в свои ковариаты X1 и X2 и добавить 50 значений NA в y. И измените n, включив в него 50 значений.
Затем ваша модель будет давать прогнозы для 50 NA значений для y добавленных.

person Sébastien Rochette    schedule 01.06.2017

Да, вы можете сделать именно так, как вы описали, если вы сначала создадите новый набор данных с 50 наблюдениями и переменными Y, X1 и X2, как описано в StatnMap (а именно,, 50 значений для обоих X1 и X2 и 50 NAs для Y), но вам не нужно будет повторно запускать вашу модель, как подразумевается StatnMap. Просто для ясности: вы можете, но вам не нужно.

person Marcelo Ventura    schedule 03.06.2017