有没有一种简单的方法可以用一个值替换因子变量中的 NA?

Is there a simple way to replace NAs in a factor variable with a value?

我在这个网站上阅读了一些答案,但他们没有提供简单的 answers.So,如何用一个值替换因子变量中的 NAs

a<-c(1,2,3,3,3,3,3,3,2,2,2,2,2,2,1,1,1,1,1,NA,NA,NA,NA,NA,NA)
lv<-c(1,3,2)
lb<-c("a","b","c")
f<-factor(a,levels=lv,labels=lb)
#I want to replace NAs with "b"

您在这里混淆了值和级别。在你的因子变量 2 对应于 "b" 水平。

f[is.na(f)] <- "b"

如果不将因子转换回向量,我认为您无法替换原始值。