У меня есть глобальная среда со множеством фреймов данных, которые должны быть вменены мышам library(mice)
.Чтобы сначала вычислить матрицы предсказания, я сделал (с помощью некоторых других людей) следующее:
library(mice)
PredMatr= list()
Myls<-ls(sorted=F)[eapply(.GlobalEnv, class)=="data.frame"]
try (for (i in 1:length(Myls)) {
PredMatr[[i]]=quickpred(get(Myls[i]), mincor=.1)
})
Это создает очень хороший список со всеми матрицами предсказания.Следующий шаг, однако, еще немного сложнее.Я хотел бы сделать что-то подобное, чтобы сделать вменение.Я хочу просмотреть циклы данных, как раньше.Однако теперь я хотел бы, чтобы операция была вменением, ссылаясь на матрицу предикторов из предыдущего списка.Я попытался:
dfimpls= list()
try (for (i in 1:length(Myls)) {
dfimpls[[i]]=mice(get(Myls[i]), m=5, maxit = 5, method='cart',predictorMatrix=PredMatr[i])
})
Синтаксис, однако, неправильный, выдавая мне следующую ошибку:
Error : predictorMatrix not a matrix
С:
dfimpls= list()
try (for (i in 1:length(Myls)) {
dfimpls[[i]]=mice(get(Myls[i]), m=5, maxit = 5, method='cart',predictorMatrix=as.matrix(PredMatr[i]))
})
Я получаю:
Error : Missing row/column names in predictorMatrix