lmList
我正在尝试使用包中的通用模型计算组的置信区间lme4
。它适用于正常的线性模型,但当因变量是二分法时会失败。例如,这很好用:
d <- data.frame(
g = sample(c("A","B","C","D","E"), 250, replace=TRUE),
y1 = runif(250, max=100),
y2 = sample(c(0,1), 250, replace=TRUE)
)
library(lme4)
fm1 <- lmList(y1 ~ 1 | g, data=d)
我可以使用 提取系数,coef(fm1)
并使用 提取系数的置信区间confint(fm1)
。然后我运行一个具有二分结果的模型:
fm2 <- lmList(y2 ~ 1 | g, data=d, family=binomial)
我仍然可以使用 获取系数coef(fm2)
,但是当我尝试获取置信区间时,出现错误:
> confint(fm2)
Waiting for profiling to be done...
Waiting for profiling to be done...
Error in val[, , i] <- eval(mCall) : incorrect number of subscripts
我最初打算将此发布到 stats.stackexchange 因为我认为这可能是我不了解 GLM 的置信区间的东西,但后来我发现我仍然可以使用
by(d, d$g, function(x) confint(glm(y2 ~ 1, data=x, family=binomial)))
有什么方法可以做到这一点lmList
吗?
> sessionInfo()
R version 2.15.0 (2012-03-30)
Platform: x86_64-pc-mingw32/x64 (64-bit)
locale:
[1] LC_COLLATE=German_Germany.1252 LC_CTYPE=German_Germany.1252
[3] LC_MONETARY=German_Germany.1252 LC_NUMERIC=C
[5] LC_TIME=German_Germany.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] lme4_0.999375-42 Matrix_1.0-6 lattice_0.20-6
loaded via a namespace (and not attached):
[1] grid_2.15.0 MASS_7.3-17 nlme_3.1-103 stats4_2.15.0 tools_2.15.0