使用Stan和frontend软件包,rstanarm
或者brms
像以前一样,我可以像以前一样轻松地以贝叶斯方式分析数据lme
。虽然我桌上有Kruschke-Gelman-Wagenmakers等的大部分书籍和文章,但这些内容并没有告诉我如何总结医学观众的结果,这些结果困扰于贝叶斯愤怒的Skylla和医学评论家的Charybdis( “我们需要意义,而不是那些分散的东西”)。
例如:胃频率(1 / min)分为三组;健康对照是参考。每个参与者都有几种度量,因此常客我使用以下混合模型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 * std错误作为95%CI。
在常客的背景下,我将其总结为:
- 在对照组中,估计频率为2.7 / min(也许在此处添加CI,但由于绝对和差异CI造成的混淆,我有时会避免这样做)。
- 在no_symptoms组中,频率比对照组高0.4 / min,CI(0.11至0.59)/ min,p = 0.006。
- 在with_symptoms组中,频率比对照组高0.2 / min,CI(-0.04至0.4)/ min,p = 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%用作默认值。)
问题:
- 怎么把上面的总结翻译成贝叶斯世界?
- 在何种程度上需要事先讨论?我很确定,当我提到先验时,论文将以通常的“主观假设”返回。或至少“请不要进行技术讨论”。但是所有贝叶斯当局都要求解释仅在先验条件下有效。
- 在不背离贝叶斯概念的情况下,如何在表述上提供一些“意义”替代?诸如“令人难以置信的不同”(uuuh ...)或几乎令人信服的不同(buoha ...,听起来像“意义重大”)之类的东西。
乔纳·加布里(Jonah Gabry)和本·古德里奇(Ben Goodrich)(2016)。rstanarm:通过Stan进行的贝叶斯应用回归建模。R软件包版本2.9.0-3。 https://CRAN.R-project.org/package=rstanarm
斯坦发展团队(2015)。Stan:2.8.0版的C ++概率和抽样库。网址http://mc-stan.org/。
Paul-Christian Buerkner(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)
。