我有一个包含NA
值的向量,我想用新的因子水平NA
替换它们。
a = as.factor(as.character(c(1, 1, 2, 2, 3, NA)))
a
[1] 1 1 2 2 3 <NA>
Levels: 1 2 3
这个方法可行,但似乎是一种奇怪的做法。
a = as.factor(ifelse(is.na(a), "NA", a))
class(a)
[1] "factor"
这是预期输出:
a
[1] 1 1 2 2 3 NA
Levels: 1 2 3 NA
NA
还是"NA"
?也许,你想用paste
而不是as.character
? - alexis_laz