我想知道当使用R中的mouses包获取估算数据时,原始数据集的作用是什么。我需要先估算数据,然后计算一些其他变量,然后再将长数据集转回as.mids对象。我注意到,在计算我的附加变量(以下代码中的“总计”)时,我是否使用na.rm=TRUE
是否会受到估计的影响,并且根据我的理解,应该不会。这是一个可重现的示例:
# Add required package
require(mice)
# Impute data and compute summary with na.rm=T
imp1 <- mice(nhanes, seed = 123)
com1 <- complete(imp1, "long", include = TRUE)
head(com1)
com1$total <- rowSums(com1[4:6],na.rm=T)
imp2 <- as.mids(com1)
# Fit model with data using na.rm=T
fit <- with(imp2, lm(bmi ~ age))
round(summary(pool(fit)), 2)
请注意,我的变量“总计”是3个变量的rowSums,我使用了na.rm=TRUE
。但是,由于仅原始数据集(在长数据集中由变量“ .imp”表示包含NA值),所以该额外的代码位仅应与原始数据相关。删除na.rm=TRUE
表示这是不正确:
# Impute data and compute summary without na.rm=T
imp3 <- mice(nhanes, seed = 123)
com2 <- complete(imp3, "long", include = TRUE)
head(com2)
com2$total <- rowSums(com2[4:6])
imp4 <- as.mids(com2)
# Fit model with data without using na.rm=T
fit2 <- with(imp4, lm(bmi ~ age))
round(summary(pool(fit2)), 2)
同样,请注意,省略na.rm=TRUE
会导致不同的估计。唯一的区别是,当变量.imp等于零(即原始数据集)时,变量“总计”现在具有NA值。
我想念什么?我本以为只有推算数据会影响合并的估计,而我只是证明原始数据集中的值确实会影响(即来自.imp = 0的值)。原始数据集在从小鼠收集汇总估计值中起什么作用?
注意:为清晰起见而编辑
答案 0 :(得分:0)
我可以想象原始(原始)数据不起作用。根据{{1}}帮助页面,仅需要指示丢失的数据在哪里。我运行了您的脚本,发现创建as.mids
时出错。您调用对象imp2
,该对象应为com
。校正后,两种方法的结果完全相同:
com1
结果:
# Add required package
require(mice)
# Impute data and compute summary with na.rm=T
imp1 <- mice(nhanes, seed = 123)
com1 <- complete(imp1, "long", include = TRUE)
head(com1)
com1$total <- rowSums(com1[4:6],na.rm=T)
imp2 <- as.mids(com1)
# Fit model with data using na.rm=T
fit <- with(imp2, lm(bmi ~ age))
# Impute data and compute summary without na.rm=T
imp3 <- mice(nhanes, seed = 123)
com2 <- complete(imp3, "long", include = TRUE)
head(com2)
com2$total <- rowSums(com2[4:6])
imp4 <- as.mids(com2)
# Fit model with data without using na.rm=T
fit2 <- with(imp4, lm(bmi ~ age))
简而言之,我认为不同的结果可能是由于您的代码错误所致。我使用了> round(summary(pool(fit)), 2)
estimate std.error statistic df p.value
(Intercept) 29.76 1.86 15.98 18.61 0.00
age -1.73 0.95 -1.83 19.50 0.08
> round(summary(pool(fit2)), 2)
estimate std.error statistic df p.value
(Intercept) 29.76 1.86 15.98 18.61 0.00
age -1.73 0.95 -1.83 19.50 0.08