假设我在一个大型数据帧上(例如100000行和50列)运行缺少的可变插补R包之一,即amelia或鼠标(或类似的东西),以获取某一特定列的插补(让我们例如200)NAs。
是否有一种方法可以保存派生的插补算法,以便当我获得具有1000个新行的新数据时,可以简单地将该算法应用于该新数据?
目标是使用与基础数据中相同的算法来估算新数据集中的任何新NA。
提前谢谢您-如果不清楚,我很乐意回答任何问题。
答案 0 :(得分:0)
caret
接近您想要的内容:这假定所有新数据都具有相同的变量。 caret
和mice
进行的插补确实有不同的准确性(以我的经验)。
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)