0

我想测试使用混合效应模型拟合的系数(不是截距)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

有人有解决方法吗?

4

1 回答 1

0

car我联系了包的作者 John Fox 。car:::linearHypothesis()他证实,在对待模型的拟合方式中确实存在一个错误lme4:::lmer()。这应该在下一个版本中修复car

于 2017-11-13T17:19:11.820 回答