我试图通过以下代码解决R中的缺失值
{ds$bmi=ifelse(is.na(ds$bmi), ave(ds$bmi, Fun=function(x) mean(y,na.rm=TRUE)),ds$bmi)}
它给出了以下错误
unique.default(x,nmax = nmax)出错: unique()仅适用于矢量
请帮助解决此错误
答案 0 :(得分:0)
这里' ave'没有任何"分组变量,通常是因子,所有变量都与x相同。"如'ave(... args)所述。
如果目标是用bmi的平均值替换NA,可能只是直接意味着你想要的意思吗?
hm_rows=10;
ds=data.frame(bmi=runif(hm_rows,0,10))
ds[c(1,2,4,6),"bmi"] <- NA
{ds$bmi=ifelse(is.na(ds$bmi), mean(ds$bmi,na.rm=TRUE),ds$bmi)}