我正在尝试在数据上运行这个简单的代码,这是一个包含800个特征和200000个观测值的数据框架。
我一直使用的这个简单代码:
C <- ncol(data)
for (i in 1:C){
print(i)
data[is.na(data[,i]),i] <- mean(data[,i], na.rm=T)
}
返回:
[1] 1
Error: cannot allocate vector of size 1.6 Mb
我真的不明白为什么,因为我可以独立地调用该功能的平均值而没有任何错误。任何
答案 0 :(得分:0)
该错误意味着您的内存不足以计算方法。
有时,根据对象的引用次数,R将复制对象,对副本进行更改,然后替换原始文件(reference)。这很可能是你的情况。
我建议你使用 data.table 包,它允许无副本变量修改。