Manually replace levels with "other"
fct_other(f, keep, drop, other_level = "Other")
fct_lump()
to automatically convert the rarest (or most
common) levels to "other".
x <- factor(rep(LETTERS[1:9], times = c(40, 10, 5, 27, 1, 1, 1, 1, 1)))
fct_other(x, keep = c("A", "B"))
#> [1] A A A A A A A A A A A A
#> [13] A A A A A A A A A A A A
#> [25] A A A A A A A A A A A A
#> [37] A A A A B B B B B B B B
#> [49] B B Other Other Other Other Other Other Other Other Other Other
#> [61] Other Other Other Other Other Other Other Other Other Other Other Other
#> [73] Other Other Other Other Other Other Other Other Other Other Other Other
#> [85] Other Other Other
#> Levels: A B Other
fct_other(x, drop = c("A", "B"))
#> [1] Other Other Other Other Other Other Other Other Other Other Other Other
#> [13] Other Other Other Other Other Other Other Other Other Other Other Other
#> [25] Other Other Other Other Other Other Other Other Other Other Other Other
#> [37] Other Other Other Other Other Other Other Other Other Other Other Other
#> [49] Other Other C C C C C D D D D D
#> [61] D D D D D D D D D D D D
#> [73] D D D D D D D D D D E F
#> [85] G H I
#> Levels: C D E F G H I Other