unique.default(x,nmax = nmax)中的错误:unique()仅适用于R中的向量

时间:2018-03-12 18:46:52

标签: r analytics data-science

我试图通过以下代码解决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()仅适用于矢量

请帮助解决此错误

1 个答案:

答案 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)}