汇集插补数据集的GLMER

汇集插补数据集的GLMER,r,lme4,r-mice,R,Lme4,R Mice,问题是: 我有一个数据集,缺少一些预测值。我想将应用于这些插补集的glmer模型汇集在一起。我正在使用mices包创建插补(我也使用了amelia和mi,但没有成功)。我想主要提取固定效果 在mice包中使用pool()函数返回错误: Error in qhat[i, ] : incorrect number of dimensions 我已尝试在此处使用并改编先前重写的pool()函数: 我可能忽略了一个显而易见的解决方案 下面是一个例子: # 1. create data (that c

问题是:

我有一个数据集,缺少一些预测值。我想将应用于这些插补集的
glmer
模型汇集在一起。我正在使用
mices
包创建插补(我也使用了
amelia
mi
,但没有成功)。我想主要提取固定效果

在mice包中使用
pool()
函数返回错误:

Error in qhat[i, ] : incorrect number of dimensions
我已尝试在此处使用并改编先前重写的
pool()
函数:

我可能忽略了一个显而易见的解决方案

下面是一个例子:

# 1. create data (that can be replicated and converge later)

data = data.frame(x1=c(rep("1",0.1*1000), rep("0",0.5*1000), 
                       rep("1",0.3*1000), rep("0",0.1*1000)), 
                  x2=c(rep("fact1",0.55*1000), rep("fact2",0.1*1000), 
                       rep(NA,0.05*1000), rep("fact3",0.3*1000)),
                  centre=c(rep("city1",0.1*1000), rep("city2",0.2*1000), 
                           rep("city3",0.15*1000), rep("city1",0.25*1000), 
                           rep("city2",0.3*1000)                          ))

# 2. set factors
data = sapply(data, as.factor)

# 3. mice imputation 
library(mice)
imp.data = mice(data, m=5, maxit=20, seed=1234, pri=F) 

# 4. apply the glmer function
library(lme4)
mice.fit = with(imp.data, glmer(x1~x2+(1|centre), family='binomial'))

# 5. pool imputations together
pooled.mi = pool(mice.fit)
下面是我在步骤4中应用的另一个函数,希望它能创建一个适合
pool()
的对象


我有一个解决办法,就是使用一个荟萃分析模型来汇集
glmer
模型的每个固定效应的结果。这是可行的-但是让Rubin模型工作会更好。

这对我来说是可行的,因为我制作了自己的
鼠标叉,将上面引用的扩展版本拉入其中,并稍微清理一下:试试看

devtools::install_github("bbolker/mice")

然后看看你的过程如何。(如果有效,应该有人提交提醒/新的拉取请求…

类为“glmerMod”和“lmerMod”的对象之间是否有区别?我不熟悉那个包裹。但是如果没有差异,您可以将mice.fit分析的类别更改为“lmerMod”,然后它就会正常运行。

亲爱的Ben,很遗憾,当我尝试上面的命令(R版本3.3.0,mice_2.30,lme4_1.1-12)时,我收到以下错误消息“错误:找不到构建mice所需的构建工具”“.Best Regard您需要安装Rtools。感谢您的快速回答,但我使用的是mac(mac os 10.11.6)。据我所知,macintosh没有Rtools。“MacOS的Rtools”=“XCode”(请参阅并搜索XCode)
devtools::install_github("bbolker/mice")