具有分类/因子变量的多级多重插补 (MICE)?

问题描述 投票:0回答:1

我有一个数据集,我尝试使用包

mice
miceadds
micemd
进行多重插补,以用于多级设置中的分类/因子变量。我可以使用
2l.2stage.pois
方法来处理连续变量,效果非常好。分类变量的插补也适用于
polyreg
,但这并没有利用多级数据。

这是说明我的问题的可复制代码。

dat <- data.frame(x=rep(c("A", "B"), 50),
                  y=rep(c(10:14), 20),
                  r=rep(c(1:50), 2),
                  z=rep(c(1:4), 25))

dat[40:44, c("x")] <- NA
dat[60:64, c("y")] <- NA
dat[80:84, c("r")] <- NA

predm <- mice::make.predictorMatrix(data=dat)

predm[, c("z")] <- -2
predm[, c("r")] <- 3
predm[row(predm) == col(predm)] <- 0
meth <- c("x"="polyreg", "y"="2l.2stage.pois", "r"="", "z"="")

imputed = mice(dat, method=meth, predictorMatrix=predm, m=1, maxit=1)
imp <- complete(imputed)

table(imp$x, dat$x, useNA = "always")
table(imp$y, dat$y, useNA = "always")

本质上,我试图用可能应该以

polyreg
开头的东西来代替
2l.
。我尝试过
2l.2stage.bin
,但那是针对二进制变量的。谢谢!

r imputation factors multi-level r-mice
1个回答
0
投票

目前在

mice
或相邻的
R
包中没有实现多级多项式回归插补。解决方法是使用
pmm
代替。根据经验,
pmm
对于非聚类数据中的分类变量效果很好,另请参阅
mice
书中的建议 FIMD

多级

pmm
方法在
miceadds
中实现为
2l.pmm
micemd
2l.2stage.pmm

© www.soinside.com 2019 - 2024. All rights reserved.