Compared to base::droplevels() does not drop NA levels that have values.

fct_drop(f, only)

Arguments

f

A factor

only

A character vector restricting the set of levels to be dropped. If supplied, only levels that have no entries and appear in this vector will be removed.

Examples

f <- factor(c("a", "b"), levels = c("a", "b", "c")) f
#> [1] a b #> Levels: a b c
fct_drop(f)
#> [1] a b #> Levels: a b
# Set only to restrict which levels to drop fct_drop(f, only = "a")
#> [1] a b #> Levels: a b c
fct_drop(f, only = "c")
#> [1] a b #> Levels: a b