我使用R中的MICE包成功完成了对我的问卷调查缺失数据的多重估算,并对汇总的估算变量进行了线性回归。我似乎无法弄清楚如何提取单个池化变量并在图形中绘图。有什么想法吗?
e.g。
>imp <- mice(questionnaire)
>fit <- with(imp, lm(APE~TMAS+APB+APA+FOAP))
>summary(pool(fit))
我想通过TMAS绘制汇集的APE。
使用nhanes的可重复示例:
> library(mice)
> nhanes
> imp <-mice(nhanes)
> fit <-with(imp, lm(bmi~chl+hyp))
> fit
> summary(pool(fit))
我想将汇集的chl与汇集的bmi(例如)联系起来。
我能够实现的最佳目标是
> mat <-complete(imp, "long")
> plot(mat$chl~mat$bmi)
我相信这给出了所有5个插补的综合情节,并不是我想要的(我认为)。
答案 0 :(得分:9)
底层的with.mids()函数允许对每个估算的数据帧执行回归。所以这不是一次回归,而是发生了5次回归。 pool()只是对估计系数求平均值,并根据插补量调整统计推断的方差。
因此,没有单个汇集变量可供绘制。您可以做的是对5个估算集进行平均,并根据合并系数重新创建某种“回归线”,例如:
# Averaged imputed data
combchl <- tapply(mat$chl,mat$.id,mean)
combbmi <- tapply(mat$bmi,mat$.id,mean)
combhyp <- tapply(mat$hyp,mat$.id,mean)
# coefficients
coefs <- pool(fit)$qbar
# regression results
x <- data.frame(
int = rep(1,25),
chl = seq(min(combchl),max(combchl),length.out=25),
hyp = seq(min(combhyp),max(combhyp),length.out=25)
)
y <- as.matrix(x) %*%coefs
# a plot
plot(combbmi~combchl)
lines(x$chl,y,col="red")