我正在尝试运行多元线性混合模型,需要使用远程工作站来减少计算时间。
当我在个人计算机(R版本2.15.1,lme4版本0.999999-0,64位Unix)上从lme4运行glmer()时,我的模型运行正常。
当我切换到删除工作站(R版本3.0.2,lme4版本1.0-6,64位Linux)时,我的模型没有运行,我收到错误和警告消息:
Error in eval(expr, envir, enclos) : updateMu: Size mismatch
In addition: Warning message:
calling glmer() with family=gaussian (identity link) as a shortcut to lmer() is deprecated; please call lmer() directly
有趣的是,如果我在任一因变量上运行lmer(),模型将运行时没有错误或警告。
以下是示例代码:
library(lme4)
DV.1 <- rnorm(100,2,0.3)
DV.2 <- rnorm(100,5,2)
FE.1 <- sample(c(1:3),100,replace=TRUE)
FE.2 <- sample(c(1:2),100,replace=TRUE)
RE.1 <- rep(c(1:10),10)
df <- as.data.frame(cbind(DV.1,DV.2,FE.1,FE.2,RE.1))
glmer(cbind(DV.1,DV.2)~FE.1+FE.2+(1|RE.1),family=gaussian,data=df)
这是我个人电脑的输出:
> glmer(cbind(DV.1,DV.2)~FE.1+FE.2+(1|RE.1),family=gaussian,data=df)
Linear mixed model fit by REML
Formula: cbind(DV.1, DV.2) ~ FE.1 + FE.2 + (1 | RE.1)
Data: df
AIC BIC logLik deviance REMLdev
76.94 89.97 -33.47 53.66 66.94
Random effects:
Groups Name Variance Std.Dev.
RE.1 (Intercept) 0.00000 0.00000
Residual 0.10322 0.32128
Number of obs: 100, groups: RE.1, 10
Fixed effects:
Estimate Std. Error t value
(Intercept) 2.02330 0.13377 15.125
FE.1 -0.04980 0.04082 -1.220
FE.2 0.06238 0.06451 0.967
Correlation of Fixed Effects:
(Intr) FE.1
FE.1 -0.626
FE.2 -0.719 -0.037
以下是远程工作站的输出,其中包含较新版本的lme4:
> glmer(cbind(DV.1,DV.2)~FE.1+FE.2+(1|RE.1),family=gaussian,data=df)
Error in eval(expr, envir, enclos) : updateMu: Size mismatch
In addition: Warning message:
In glmer(cbind(DV.1, DV.2) ~ FE.1 + FE.2 + (1 | RE.1), family = gaussian, :
calling glmer() with family=gaussian (identity link) as a shortcut to lmer() is deprecated; please call lmer() directly
>
我想知道模型是否形成错误,或者是否存在lme4的一个版本的复杂情况。 任何想法或建议都非常感谢。 谢谢!