Использование моделей вменения, созданных из амелии или мышей в R, для новых данных - PullRequest
0 голосов
/ 21 января 2019

Предположим, что я запускаю один из отсутствующих пакетов R для вменения переменных, amelia или мыши (или аналогичных), в большом фрейме данных - скажем, 100000 строк и 50 столбцов - чтобы получить вменения для одного конкретного столбца с некоторыми (давайтескажем 200) NA в нем.

Есть ли способ сохранить производный алгоритм вменения, чтобы, когда я получаю новые данные с 1000 новыми строками, я мог просто применить алгоритм к этим новым данным?

Цель состоит в том, чтобы вписать любые новые NA в новый набор данных, используя тот же алгоритм, что и в базовых данных.

Заранее спасибо - если это не ясно, яс удовольствием отвечу на любые вопросы.

1 Ответ

0 голосов
/ 21 января 2019

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)
...