Прогнозирование из полного апостериорного распределения с использованием stan_glmer
Могу я попросить о помощи, пожалуйста?
Я использовал биномиальную модель, используя stan_glmer, и выбрал модель, которая, я думаю, лучше всего подходит для данных. Я использовал команду апостериорного прогнозирования, чтобы сравнить мои наблюдаемые данные с данными, моделируемыми моделью, и это кажется очень похожим.
Теперь я хочу предсказать вероятность события для разных уровней предикторов. Я обычно использовал команду предсказания в glmer, но я знаю, что должен использовать команду posterior_predict для stan_glmer, чтобы учесть полную неопределенность в модели. Если x1 и x2 являются непрерывными предикторами для двоичного события, и я хочу, чтобы случайный перехват в группе, формула модели была бы:
model <- stan_glmer(binary event ~ x1 + x2 +(1 | group), family="binomial"
Мой вопрос: я хочу изменить предикторы (x1 и x2), чтобы увидеть, как модель прогнозирует наблюдаемые данные (и изменчивость в этих прогнозах), возможно, в виде графика, но я не уверен, как. Любая помощь или руководство будет принята с благодарностью.
1 ответ
Короче, posterior_predict
имеет newdata
аргумент, который ожидает data.frame
со значениями x1
, x2
, а также group
, Этот аргумент аналогичен аргументу во многих других функциях прогнозирования, и есть пример использования, который можно выполнить с помощью example(posterior_predict, package = "rstanarm")
,
В вашем случае это может быть что-то вроде
nd <- with(original_data,
expand.grid(x1 = seq(from = min(x1), to = max(x1), length.out = 20),
x2 = seq(from = min(x2), to = max(x2), length.out = 20),
group = levels(group)))
PPD <- posterior_predict(model, newdata = nd)
но вы можете выбрать значения x1
а также x2
различными другими способами.