【发布时间】:2020-06-15 00:17:02
【问题描述】:
我有 12 个变量也包含 NA 值。我需要将 NA 转换为单独的级别。某些变量的水平值不同。以下是代码:
Replace_NAs <- function(colindex, na_level){
cname <- colnames(tr[colindex])
tr <- tr %>% mutate(cname = as.factor(replace(cname, is.na(cname), na_level)))
return(tr)
}
for (i in 1:12) {
if(i == 5){
na_level <- 3;
tr <- Replace_NAs(i,na_level);
}
else if(i == 11){
na_level <- 5;
tr <- Replace_NAs(i,na_level);
}
else if(i == 4|6|8){
na_level <- 1;
tr <- Replace_NAs(i,na_level);
}
else{
na_level <- 20;
tr <- Replace_NAs(i,na_level);
}
}
请帮助我。谢谢。
【问题讨论】:
-
我不明白你的问题。请包括一个可重复的数据示例和所需的输出。有了它,帮助你会容易得多。
-
为呈现方式道歉。