r-使用lme4车型的car::linearHypothesis()



我想测试使用lme4:::lmer()拟合的混合效应模型的系数(而不是截距)是否与零以外的值不同。car:::linearHypothesis()应该能够做到这一点,使用Kenward Rogers近似计算p值和误差自由度,如pbkrtest(汽车文档;pbkrtest文档)中所实现的那样。

然而,我遇到了一个我认为是错误的东西。我似乎只能获得对0的兴趣系数的测试。这里有一个可重复的例子:

library(car)
library(lme4)
library(pbkrtest)
set.seed(32432)
d <- data.frame(id=rep(1:100, 4), x=rnorm(400), y=rnorm(400))
m <- lmer(y ~ x + (1|id), data=d)
linearHypothesis(m, "x=4", test="F")
# F=.1256, p=.7232
linearHypothesis(m, "x=0", test="F")
# F=.1256, p=.7232

显然,这些F和p值不应该相同!

作为参考,如果我使用$\Chi^2$测试,我不会得到相同的错误,这表明我的错误是pbkrtest:

linearHypothesis(m, "x=4")
# X2=5614.1, p=2.2e-16
linearHypothesis(m, "x=0")
# X2=.1268, p=.7218

有人有变通办法吗?

我联系了car包的作者John Fox。他证实,car:::linearHypothesis()处理与lme4:::lmer()匹配的模型的方式确实存在缺陷。这应该在car的下一个版本中得到修复。

相关内容

  • 没有找到相关文章

最新更新