Avec des forfaits Stan et frontend rstanarm
ou brms
je peux facilement analyser les données de la bayésien comme je l'ai fait avant avec-modèles mixtes tels que lme
. Bien que j'ai la plupart du livre et des articles de Kruschke-Gelman-Wagenmakers-etc. sur mon bureau, ceux-ci ne me disent pas comment résumer les résultats pour un public médical, partagé entre la colère de la Skylla de Bayesian et le Charybdis des examinateurs médicaux ( "nous voulons des significations, pas des choses diffuses").
Un exemple: la fréquence gastrique (1 / min) est mesurée en trois groupes; des contrôles sains sont la référence. Il y a plusieurs mesures pour chaque participant, donc à la fréquentiste j'ai utilisé le modèle mixte suivant lme
:
summary(lme(freq_min~ group, random = ~1|study_id, data = mo))
Résultats légèrement modifiés:
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
Pour plus de simplicité, j'utiliserai une erreur 2 * std en tant qu'IC à 95%.
Dans un contexte fréquentiste, j'aurais résumé cela comme suit:
- Dans le groupe témoin, la fréquence estimée était de 2,7 / min (peut-être ajouter CI ici, mais j'évite parfois cela à cause de la confusion créée par CI absolu et différence).
- Dans le groupe no_symptoms, la fréquence était plus élevée de 0,4 / min, IC (0,11 à 0,59) / min, p = 0,006 que le témoin.
- Dans le groupe with_symptoms, la fréquence était plus élevée de 0,2 / min, IC (-0,04 à 0,4) / min, p = 0,11 que le contrôle.
Il s'agit de la complexité maximale acceptable pour une publication médicale, le critique me demandera probablement d'ajouter "non significatif" dans le deuxième cas.
Voici la même chose avec les stan_lmer
priors par défaut.
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
où CredI sont des intervalles crédibles à 90% (voir la vignette rstanarm pourquoi 90% est utilisé par défaut.)
Des questions:
- Comment traduire le résumé ci-dessus dans le monde bayésien?
- Dans quelle mesure une discussion préalable est-elle nécessaire? Je suis tout à fait sûr que le papier reviendra avec l '"hypothèse subjective" habituelle lorsque je mentionnerai les prieurs; ou du moins sans "discussion technique, s'il vous plaît". Mais toutes les autorités bayésiennes demandent que l'interprétation ne soit valable que dans le contexte des prieurs.
- Comment puis-je fournir un substitut de «signification» dans la formulation, sans trahir les concepts bayésiens? Quelque chose comme "crédiblement différent" (uuuh ...) ou presque crédiblement différent (buoha ..., sonne comme "au bord de la signification).
Jonah Gabry et Ben Goodrich (2016). rstanarm: Modélisation de régression appliquée bayésienne via Stan. Version du package R 2.9.0-3. https://CRAN.R-project.org/package=rstanarm
Équipe de développement Stan (2015). Stan: une bibliothèque C ++ pour la probabilité et l'échantillonnage, version 2.8.0. URL http://mc-stan.org/ .
Paul-Christian Buerkner (2016). brms: modèles de régression bayésienne utilisant Stan. Version du package R 0.8.0. https://CRAN.R-project.org/package=brms
Pinheiro J, Bates D, DebRoy S, Sarkar D et R Core Team (2016). nlme: Modèles d'effets mixtes linéaires et non linéaires . Version du package R 3.1-124, http://CRAN.R-project.org/package=nlme>.
group_nosymptoms
, puis dire que la probabilité qu'il soit négatif est 1 / draws
. Mais pour l'interception, la chaîne ne va jamais errer en territoire négatif pour ces données, donc je suppose que vous pourriez dire que la probabilité est inférieure à 1 / draws
.
mean(as.matrix(freq_stan)[,"groupwith_symptoms"] < 0)
.