С помощью пакетов Stan и frontend, rstanarm
или brms
я могу легко анализировать данные байесовским способом, как я делал раньше со смешанными моделями, такими как lme
. Хотя у меня на столе лежит большая часть книг и статей Крушке-Гельмана-Вагенмейкера и т. Д., Они не говорят мне, как суммировать результаты для медицинской аудитории, разрываясь между Скиллой гнева Байесиана и Харибдой медицинских рецензентов ( «мы хотим значимости, а не этого рассеянного материала»).
Пример: желудочная частота (1 / мин) измеряется в трех группах; здоровые контроли являются эталоном. Есть несколько измерений для каждого участника, поэтому я часто использовал следующую смешанную модель lme
:
summary(lme(freq_min~ group, random = ~1|study_id, data = mo))
Немного отредактированные результаты:
Fixed effects: freq_min ~ group
Value Std.Error DF t-value p-value
(Intercept) 2.712 0.0804 70 33.7 0.0000
groupno_symptoms 0.353 0.1180 27 3.0 0.0058
groupwith_symptoms 0.195 0.1174 27 1.7 0.1086
Для простоты я буду использовать 2 * стандартную ошибку как 95% CI.
В частом контексте я бы суммировал это как:
- В контрольной группе предполагаемая частота составляла 2,7 / мин (возможно, добавьте здесь CI, но иногда я избегаю этого из-за путаницы, создаваемой абсолютной и разностной CI).
- В группе без симптомов частота была выше на 0,4 / мин, ДИ (от 0,11 до 0,59) / мин, р = 0,006 по сравнению с контролем.
- В группе с симптомами частота была выше на 0,2 / мин, ДИ (от -0,04 до 0,4) / мин, р = 0,11, чем в контрольной группе.
Речь идет о максимально приемлемой сложности для медицинской публикации, рецензент, вероятно, попросит меня добавить «незначительный» во втором случае.
Здесь то же самое с stan_lmer
и по умолчанию приоры.
freq_stan = stan_lmer(freq_min~ group + (1|study_id), data = mo)
contrast lower_CredI frequency upper_CredI
(Intercept) 2.58322 2.714 2.846
groupno_symptoms 0.15579 0.346 0.535
groupwith_symptoms -0.00382 0.188 0.384
где CredI - 90% вероятные интервалы (см. виньетку rstanarm, почему 90% используется по умолчанию.)
Вопросов:
- Как перевести вышеприведенное резюме в байесовский мир?
- В какой степени требуется предварительное обсуждение? Я совершенно уверен, что статья вернется с обычным «субъективным допущением», когда я упомяну приоры; или, по крайней мере, с "без технической дискуссии, пожалуйста". Но все Байесовские власти требуют, чтобы толкование действовало только в контексте приоры.
- Как я могу дать некоторую «значимость» суррогата в формулировке, не изменяя байесовским концепциям? Что-то вроде "достоверно другой" (уууу ...) или почти достоверно другой (буоха ..., звучит как "на краю значимости").
Джона Габри и Бен Гудрич (2016). rstanarm: Байесовское моделирование прикладной регрессии через Стэн. Версия пакета R 2.9.0-3. https://CRAN.R-project.org/package=rstanarm
Команда разработчиков Stan (2015). Stan: библиотека C ++ для вероятности и выборки, версия 2.8.0. URL http://mc-stan.org/ .
Пауль-Кристиан Бюркнер (2016). brms: модели байесовской регрессии с использованием Stan. Версия пакета R 0.8.0. https://CRAN.R-project.org/package=brms
Pinheiro J, Bates D, DebRoy S, Sarkar D и R Core Team (2016). nlme: линейные и нелинейные модели смешанных эффектов . Версия пакета R 3.1-124, http://CRAN.R-project.org/package=nlme>.
group_nosymptoms
а затем сказать, что вероятность того, что он будет отрицательным, равна 1 / draws
. Но для перехвата цепочка никогда не собирается уходить в отрицательную территорию для этих данных, поэтому я думаю, вы могли бы сказать, что вероятность меньше, чем 1 / draws
.
mean(as.matrix(freq_stan)[,"groupwith_symptoms"] < 0)
.