我希望在我的多级模型系数估算值周围计算95%的置信区间。
对于具有单个分组变量的模型,我没有任何麻烦,但是当我添加一个额外的分组变量时,我遵循的引导方法(http://www.ats.ucla.edu/stat/r/dae/melogit.htm)基本上崩溃了。
我研究了bootMer(lme4的新实现部分),结果相同。
这是问题的示例:
----------------------------编辑以包含可重现的示例---------------- ------------
对这个问题的有益评论和通过示例进行的工作给出了答案-并不是第二个分组变量本身的添加,而是导致问题的分组变量的缺失。
这是遇到此问题的其他人的有效示例。
为了说明起见,这是一个简单的功能...
FUN <- function(fit) {return(fixef(fit))}
示例数据(完整)
grouper1 <- as.factor(sample(letters[1:20], 1000, replace = TRUE))
grouper2 <- sample(letters[1:2], 1000, replace = TRUE)
DV<-rnorm(1000)
IV<-rnorm(1000)
example<-data.frame(grouper1, grouper2, DV, IV)
与此数据一起正常工作
one_grouper<-lmer(DV ~ IV + (1 | grouper1), data=example)
> bootMer(one_grouper,FUN, nsim=1)
Call:
bootMer(x = one_grouper, FUN = FUN, nsim = 1)
Bootstrap Statistics :
original bias std. error
t1* 0.005286026 0.041665542 NA
t2* 0.009642498 -0.003707219 NA
>
> two_grouper<-lmer(DV ~ IV + (1 | grouper1) + (1 | grouper2), data=example)
>
> bootMer(one_grouper,FUN, nsim=1)
Call:
bootMer(x = one_grouper, FUN = FUN, nsim = 1)
Bootstrap Statistics :
original bias std. error
t1* 0.005286026 -0.03465914 NA
t2* 0.009642498 -0.01361108 NA
但是,当我们在分组变量中引入缺失时...
example$missinggroups <- with(example, ifelse(randommissing=="f", NA,grouper1))
> one_grouper<-lmer(DV ~ IV + (1 | missinggroups ), data=example)
>
> bootMer(one_grouper,FUN, nsim=1)
Call:
bootMer(x = one_grouper, FUN = FUN, nsim = 1)
Bootstrap Statistics :
WARNING: All values of t1* are NA
WARNING: All values of t2* are NA
Warning message:
In bootMer(one_grouper, FUN, nsim = 1) : some bootstrap runs failed (1/1)
最佳答案
这是一个confirmed issue,根据评论,此修复程序已在2014年1月8日的开发版本中运行。
当版本lme4 on CRAN的版本> 1.1-5。