我正在做一个学校项目,在这个项目中,我需要对丢失的数据进行估算,在对老鼠进行估算之后,我试图生成完整的数据集,并具有完整的功能。
当我一个一个地运行它们时,一切都很好,但是我想使用for-循环,以防我想要的不仅仅是m = 5估算。现在,在尝试运行for-loop时,我总是会得到错误
完全错误(Imputation1):输入数据必须有类'mids‘。
然而,当我查找这个类时,是 mids,这里出了什么问题?
这是我的密码:
imputation <- mice(data = data, m = 5, method = "norm", maxit = 1, seed = 500)
m <- 5
for(i in 1:m){
completeData[m] <- complete(imputation[m])
print(summary(completeData[m]))
}有人能帮我一下吗?
发布于 2017-03-08 12:37:35
因为类不是mids,所以我们收到了错误
imputation[1]
# $call
# mice(data = walking, m = 5, maxit = 0, seed = 500)
class(imputation[1])
# [1] "list"来自?complete的手册
用法
complete(x, action = 1, include = FALSE)
library(mice)
# dummy data imputation
data(walking)
imputation <- mice(walking, max = 0, m = 5, seed = 500)
# using for loop
m <- 5
for(i in 1:m){
completeData <- complete(imputation, m)
print(summary(completeData))
}
# I prefer to use lapply
lapply(seq(imputation$m), function(i) summary(complete(imputation, i)))https://stackoverflow.com/questions/42669724
复制相似问题