在线性混合模型设置中,我将变量输入模型的顺序(既是随机效应又是固定效应)似乎会影响我从模型获得的估计值。在OLS设置中,情况并非如此。
当我改变固定效应进入模型的顺序或随机效应的顺序时,谁能解释为什么估计的固定效应会发生变化?因为我看不到
lmer(Y ~ X1 + X2 + (1 + X1 + X2 | f) )
与
不同lmer(Y ~ X2 + X1 + (1 + X2 + X1 | f) )
下面是一个简短的示例。
library(lme4)
lmer1 <- lmer(Sepal.Length ~ 1 + Sepal.Width + Petal.Length +
Petal.Width + (1 + Sepal.Width + Petal.Length + Petal.Width |
Species), data=iris)
lmer2 <- lmer(Sepal.Length ~ 1 + Sepal.Width +
Petal.Length + Petal.Width + (1 + Petal.Width + Sepal.Width +
Petal.Length | Species), data=iris)
lmer3 <- lmer(Sepal.Length ~ 1 +
Petal.Width + Sepal.Width + Petal.Length + (1 + Petal.Width +
Sepal.Width + Petal.Length | Species), data=iris)
fixef(lmer1)
fixef(lmer2)
fixef(lmer3)[c("(Intercept)", "Sepal.Width", "Petal.Length", "Petal.Width")]
这三个看似相同的模型的输出如下所示:
> fixef(lmer1)
(Intercept) Sepal.Width Petal.Length Petal.Width
1.6707431 0.4711415 0.7266866 -0.2240361
> fixef(lmer2)
(Intercept) Sepal.Width Petal.Length Petal.Width
1.6707432 0.4711417 0.7266866 -0.2240366
> fixef(lmer3)[c("(Intercept)", "Sepal.Width", "Petal.Length", "Petal.Width")]
(Intercept) Sepal.Width Petal.Length Petal.Width
1.6707428 0.4711414 0.7266866 -0.2240358
现在,尽管估计的固定效果是如此相似,以至于它们之间的差异几乎没有任何实际意义,但我仍然想知道为什么会发生。
答案 0 :(得分:3)
正如我对原始帖子的评论中指出的那样,事实证明这是lme4软件包中的一个已知错误;参见https://github.com/lme4/lme4/issues/449。希望可以在软件包的将来版本中解决此问题。感谢Dimitris Rizopoulos提供此信息。
此外,事实证明,数据集中行的顺序也以类似的方式影响估计:glmer in R: Significance estimates are not robust to order of data frame
换句话说,我们如何将变量输入lmer以及以什么顺序放置数据集的行,当前会影响估计值。希望这些问题能够在将来解决,因为我认为这对于统计工具来说并不是一个有吸引力的特性。