我建立了一个线性混合模型,并对其进行了事后测试。固定因素是相数(时间)和组。
statistic_of_comp <- function (x, df) {
x.full.1 <- lmer(x ~ phase_num + group + (1|mouse), data=df, REML = FALSE)
x_phase.null.1 <- lmer(x ~ group + (1|mouse), data=df, REML = FALSE)
print(anova (x.full.1, x_phase.null.1))
summary(glht(x.full.1, linfct=mcp(phase_num="Tukey")))
}
现在我的问题是,我想用多个固定因子进行事后测试。我发现了以下
linfct=mcp(phase_num="Tukey", group="Tukey)
但这并没有给出我想要的结果。目前,我得到了与Tukey进行的比较(每个小组与其他小组进行比较)以及两个阶段之间的比较。
我想要的是每个组的phase_numbers的比较。 例如group1 phase1-phase2 ...,group2 phase1-phase2等。
答案 0 :(得分:2)
我确定您可以使用multcomp
来做到这一点,但让我来说明如何使用emmeans
软件包来做到这一点。我将使用常规的线性模型(因为您没有给出可复制的示例),但是下面的食谱在混合模型中也应适用。
?emmeans
中的线性模型(使用内置数据集):
warp.lm <- lm(breaks ~ wool * tension, data = warpbreaks)
应用emmeans()
,然后应用pairs()
函数
pairs(emmeans(warp.lm , ~tension|wool))
wool = A:
contrast estimate SE df t.ratio p.value
L - M 20.556 5.16 48 3.986 0.0007
L - H 20.000 5.16 48 3.878 0.0009
M - H -0.556 5.16 48 -0.108 0.9936
wool = B:
contrast estimate SE df t.ratio p.value
L - M -0.556 5.16 48 -0.108 0.9936
L - H 9.444 5.16 48 1.831 0.1704
M - H 10.000 5.16 48 1.939 0.1389
有关更多信息,请参见?pairs.emmGrid
或vignette("comparisons",package="emmeans")
(它们阐明了这些测试确实确实使用了Tukey比较)。