Com os pacotes Stan e frontend, rstanarm
ou brms
posso analisar facilmente os dados da maneira bayesiana, como fiz antes com modelos mistos como lme
. Embora eu tenha a maioria dos livros e artigos de Kruschke-Gelman-Wagenmakers-etc em minha mesa, eles não me dizem como resumir os resultados para uma audiência médica, divididos entre a ira de Skylla da Bayesiana e os Charybdis de revisores médicos ( "queremos significados, não coisas difusas").
Um exemplo: a frequência gástrica (1 / min) é medida em três grupos; controles saudáveis são a referência. Existem várias medidas para cada participante, então, como freqüentador, usei o seguinte modelo misto lme
:
summary(lme(freq_min~ group, random = ~1|study_id, data = mo))
Resultados ligeiramente editados:
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
Para simplificar, usarei o erro 2 * std como IC de 95%.
No contexto frequentista, eu teria resumido isso como:
- No grupo de controle, a frequência estimada foi de 2,7 / min (talvez adicione IC aqui, mas às vezes evito isso devido à confusão criada pelo IC absoluto e pela diferença).
- No grupo no_symptoms, a frequência foi maior em 0,4 / min, IC (0,11 a 0,59) / min, p = 0,006 que o controle.
- No grupo com sintomas, a frequência foi maior em 0,2 / min, IC (-0,04 a 0,4) / min, p = 0,11 que o controle.
Trata-se da complexidade máxima aceitável para uma publicação médica, o revisor provavelmente me pedirá para adicionar "não significativo" no segundo caso.
Aqui está o mesmo com stan_lmer
e anteriores padrão.
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
onde CredI são intervalos de 90% credíveis (veja a vinheta do rstanarm por que 90% é usado como padrão).
Questões:
- Como traduzir o resumo acima para o mundo bayesiano?
- Até que ponto é necessária uma discussão prévia? Tenho certeza de que o artigo voltará com a "suposição subjetiva" usual quando menciono os anteriores; ou pelo menos com "nenhuma discussão técnica, por favor". Mas todas as autoridades bayesianas solicitam que a interpretação seja válida apenas no contexto de anteriores.
- Como posso fornecer algum substituto de "significado" na formulação, sem trair os conceitos bayesianos? Algo como "credivelmente diferente" (uuuh ...) ou quase credivelmente diferente (buoha ..., soa como "à beira do significado).
Jonah Gabry e Ben Goodrich (2016). rstanarm: Modelagem de regressão aplicada bayesiana via Stan. Pacote R versão 2.9.0-3. https://CRAN.R-project.org/package=rstanarm
Equipe de Desenvolvimento Stan (2015). Stan: Uma biblioteca C ++ para probabilidade e amostragem, versão 2.8.0. URL http://mc-stan.org/ .
Paul-Christian Buerkner (2016). brms: Modelos de regressão bayesiana usando Stan. Pacote R versão 0.8.0. https://CRAN.R-project.org/package=brms
Pinheiro J, Bates D, DebRoy S, Sarkar D e R Core Team (2016). nlme: Modelos de efeitos mistos lineares e não lineares . Pacote R versão 3.1-124, http://CRAN.R-project.org/package=nlme>.
group_nosymptoms
e, em seguida, dizer que a probabilidade de ser negativo é 1 / draws
. Mas para a interceptação, a cadeia nunca vai entrar em território negativo para esses dados, então acho que você poderia dizer que a probabilidade é menor que 1 / draws
.
mean(as.matrix(freq_stan)[,"groupwith_symptoms"] < 0)
.