我不知道如何循环每列以用列均值替换NA值.当我尝试使用以下代码替换一列时,它运行良好.
Column1[is.na(Column1)] <- round(mean(Column1, na.rm = TRUE))
Run Code Online (Sandbox Code Playgroud)
循环列的代码不起作用:
for(i in 1:ncol(data)){
data[i][is.na(data[i])] <- round(mean(data[i], na.rm = TRUE))
}
Run Code Online (Sandbox Code Playgroud)
值不会被替换.有人可以帮我这个吗?
我正在使用归因处理丢失的数据。我正在探索Amelia和rms软件包进行插补。我对这些软件包有一些疑问。
我想合并来自Amelia的估算数据集。我确实看到Amelia具有mi.meld将多个插补结果组合在一起的功能。但是我想先合并数据集,然后训练不同的模型。我不确定是否要合并数据集,然后使用该数据以正确的方式训练模型。我想这样做是因为我的测试数据也缺少数据。我想使用插补来处理它,以便可以用它来预测值。
for(i in 1:impute$m) {
model <- rpart(Y ~X1+X2+X3+X4+X5,
data=impute$imputations[[i]],method="anova",control=rpart.control(cp=0.001))
b.out <- rbind(b.out, model$coef)
se.out <- rbind(se.out, coef(summary(model))[,2])
}
combined.results <- mi.meld(q = b.out, se = se.out)
Run Code Online (Sandbox Code Playgroud)我也为此目的使用了rms软件包。我想确认aregImpute函数是否合并了估算数据集?
impute<- aregImpute(Y~X1+X2+X3+X4+X5,data= train_data,n.impute=5,nk=0)
Run Code Online (Sandbox Code Playgroud)有谁对如何将多个估算数据集合并到一个数据集中提出建议?