我试图将许多小类别级别归为NA
使用forcats
和fct_lump
。
> h <- forcats::fct_lump_min(factor(mtcars$gear),min = 7,other_level = NA)
> is.na(h)
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[23] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
> table(h,useNA = "always")
h
3 4 <NA>
15 12 5
> is.na(h)
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[23] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
> table(h,useNA = "ifany")
h
3 4 <NA>
15 12 5
从table(h,useNA="ifany")
我得到的印象是 NA 已被正确分配,但is.na(h)
反驳了这一点。
是否可以使用方便fct_lump
以某种方式分配NA
给其他级别?