由于无响应和其他随机因素,我正在分析我正在查看的一列(pa1min_
)中有超过450k行约100k行的数据集,其中NA
值为NA
。本专栏以分钟为单位处理锻炼时间。
我认为将Error: vector memory exhausted (limit reached?)
In addition: There were 50 or more warnings (use warnings() to see the first 50)
值用平均值或中位数填充是不合理的,因为它几乎是数据的四分之一和可能产生的偏差。我想用线性回归来估算缺失的观察结果。但是,我收到一条错误消息:
# imputing using multiple imputation deterministic regression
imp_model <- mice(brfss2013, method="norm.predict", m=1)
# store data
data_imp <- complete(imp_model)
# multiple imputation
imp_model <- mice(brfss2013, m=5)
# building predictive mode
fit <- with(data=imp_model, lm(y ~ x + z))
# combining results
combined <- pool(fit)
这是我的代码:
Data
这是数据(压缩)MrFlick的链接
注意:我真的只想填写一列的插入...数据框中的其他列是字符,整数和因子的混合,有些列有超过2个级别。
与qazxswpoi提到的类似,你的内存有点短。
尝试在1%的数据上运行算法,如果成功,您应该尝试检查bigmemory包以进行磁盘计算。
我还鼓励你检查你的数据模型是否真的没有贝叶斯估算,因为尝试获得完美数据的事实并不比仅仅在数据上插入均值/中值/第一个/最后一个值更有益。
希望这可以帮助。