在 R 中使用从 amelia 或 mice 创建的插补模型来处理新数据

Using imputation models created from amelia or mice in R for new data

假设我 运行 缺少变量插补 R 包之一,amelia 或 mice(或类似的),在一个大数据框上——比方说 100000 行和 50 列——得到一个的插补特定列中有一些(比方说 200 个)NA。

有没有一种方法可以保存派生插补算法,以便当我获得包含 1000 个新行的新数据时,我可以简单地将算法应用于该新数据?

目标是使用与基础数据中相同的算法来估算新数据集中的任何新 NA。

提前致谢 - 如果您不清楚,我很乐意回答任何问题。

caret 接近您想要的:这假设所有新数据都采用相同的变量。 caretmice 的估算确实有不同的准确性(根据我的经验)。

library(caret)
mydata<-data.frame(A=c(rep(NA,900),rep(3,900)),B=c(rep(NA,200),rep(3,400)))
mydata1<-data.frame(D=mydata,E=rep(mydata))
prep<-preProcess(mydata,method = "medianImpute")
df_new<-predict(prep,mydata)
df_new
df_new2<-predict(prep,mydata1)