1

我建立了一个线性混合模型并对其进行了事后测试。固定因素是阶段数(时间)和组。

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 等。

4

1 回答 1

2

我相信您可以multcomp使用emmeans. 我将使用常规线性模型(因为您没有给出可重现的示例),但下面的配方应该同样适用于混合模型。

?emmeans来自(使用内置数据集)的线性模型:

warp.lm <- lm(breaks ~ wool * tension, data = warpbreaks)

Apply 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.emmGridvignette("comparisons",package="emmeans")(阐明这些测试确实默认使用 Tukey 比较)。

于 2019-02-15T13:45:04.987 回答