我试图从一组图片中提取模型摘要的这一部分。我想要方差和标准差
Random effects:
Groups Name Variance Std.Dev.
herd (Intercept) 0.4123 0.6421
Number of obs: 56, groups: herd, 15
我试着遵循这个答案从lme4 mer模型对象中提取随机效应方差
但是我似乎不能得到方差,只有标准差。我想也许这是因为我使用glmer而不是lmer,但我似乎得到了相同的结果。
gm1 <- lmer( size ~ period + (1 | herd), data = cbpp)
summary(gm1)
Random effects:
Groups Name Variance Std.Dev.
herd (Intercept) 44.40 6.664
Residual 14.51 3.810
Number of obs: 56, groups: herd, 15
> VarCorr(gm1, comp="Variance")
Groups Name Std.Dev.
herd (Intercept) 6.6636
Residual 3.8096
> VarCorr(gm1, comp="Std.Dev.")
Groups Name Std.Dev.
herd (Intercept) 6.6636
Residual 3.8096
> VarCorr(gm1, comp=c("Variance","Std.Dev."))
Groups Name Std.Dev.
herd (Intercept) 6.6636
Residual 3.8096
gm2 <- glmer(cbind(incidence, size - incidence) ~ period + (1 | herd),
data = cbpp, family = binomial)
summary(gm2)
Random effects:
Groups Name Variance Std.Dev.
herd (Intercept) 0.4123 0.6421
Number of obs: 56, groups: herd, 15
> VarCorr(gm2, comp="Variance")
Groups Name Std.Dev.
herd (Intercept) 0.64207
> VarCorr(gm2, comp="Std.Dev.")
Groups Name Std.Dev.
herd (Intercept) 0.64207
> VarCorr(gm2, comp=c("Variance","Std.Dev."))
Groups Name Std.Dev.
herd (Intercept) 0.64207
你知道这是怎么回事吗?
comp
是print()
方法的参数,而不是VarCorr
方法的参数。
print(VarCorr(gm1), comp=c("Variance", "Std.Dev."))
Groups Name Variance Std.Dev.
herd (Intercept) 44.404 6.6636
Residual 14.513 3.8096
您可能也会对
感兴趣as.data.frame(VarCorr(gm1))[,c("vcov", "sdcor")]
vcov sdcor
1 44.40371 6.663611
2 14.51309 3.809605