我正在使用lmer函数处理混合模型。我想获得所有固定和随机效果的p值。我能够使用不同的方法获得固定效果的p值,但我没有找到任何随机效果。无论我在互联网上找到什么方法,都要为它做一个空模型,然后通过比较得到p值。我可以通过这种方法制作另一个模型吗? 我的模型看起来像: mod1 = lmer(Out~Var1 +(1 + Var2 | Var3),data = dataset)
答案 0 :(得分:0)
据我所知,你必须通过模型比较来做这些。 lmerTest
包有一个名为step
的函数,它会根据许多不同的测试将模型简化为重要参数(固定和随机)。文档并不完全清楚所有内容是如何完成的,因此我更倾向于使用模型比较来进行特定的测试。
对于您的模型,您可以通过指定:
来测试随机斜率mod0 <- lmer(Out ~ Var1 + (1 + Var2 | Var3), data = dataset, REML=TRUE)
mod1 <- lmer(Out ~ Var1 + (1 | Var3), data = dataset, REML=TRUE)
anova(mod0, mod1, refit=FALSE)
这将显示对数似然检验和检验统计量(卡方分布)。但是你在这里测试两个参数:Var2的随机斜率和随机斜率与随机截距之间的协方差。所以你需要进行p值调整:
1-(.5*pchisq(anova(mod0,mod1, refit=FALSE)$Chisq[[2]],df=2)+
.5*pchisq(anova(mod0,mod1, refit=FALSE)$Chisq[[2]],df=1))