3个变量相互作用的lmer成对比较,霍尔姆校正少数计划比较而不是28

2jcobegt  于 2023-06-27  发布在  其他
关注(0)|答案(1)|浏览(142)

我有三个IV:范围内-->手(左,右),时间(前,后);训练(治疗,假手术)和连续DV之间:RT。
我已经运行了一个线性混合效应模型,看看是否有显着的相互作用使用这条线:

model1 = lmer(RT ~ Training*Time*Hand + (1|Sub), data = db)

然后我想看看一些水平之间的差异(即,左前处理和左后处理),并使用Holm方法调整p值。然而,我不想纠正“不合逻辑”的比较,如左前处理与右后假处理。
我使用的线是这样的:

emmeans(model1, list(pairwise ~ Hand * Time * Training), adjust="holm")

我想使用adjust = "none"并在稍后进行调整以进行计划的比较,但我不知道如何在R中做到这一点。

jdgnovmf

jdgnovmf1#

你没有给予一个可重复的例子,但是你计算未调整的p值,提取子集,并自己进行霍尔姆调整的策略听起来很明智-你需要知道的两件事是(1)如何从emmeans对象中提取p值(见下文)和(2)如何计算调整后的p值(答案:p.adjust(., "holm"):这是一个base-R函数)。

m1 <- lm(mpg ~ factor(carb), mtcars)
e1 <- emmeans(m1, list(pairwise ~ carb), adjust = "none")
pval1 <- as.data.frame(e1$pair)$p.value
e2 <- emmeans(m1, list(pairwise ~ carb), adjust = "holm")
pval2 <- as.data.frame(e2$pair)$p.value
all.equal(pval2, p.adjust(pval1, "holm"))  ## TRUE

相关问题