Yes, that is correct, unless you mutate them to factors on the fly, as below
library(tidyverse)
library(tibble)
data <- tribble(
~city, ~state,
"New York", "NY",
"Albuquerque", "NM",
"Los Angeles", "CA",
"New York", "NY",
"Chicago", "IL",
"San Francisco", "CA",
"New York", "NY",
"Chicago", "IL",
"Los Angeles", "CA",
"New York", "NY",
"Chicago", "IL",
"San Francisco", "CA",
"New York", "NY",
"Chicago", "IL",
"Los Angeles", "CA",
"New York", "NY",
"Ann Arbor", "MI",
"Chicago", "IL",
"New York", "NY",
"Chicago", "IL",
"San Francisco", "CA"
)
data %>%
mutate(city = fct_lump_min(as.factor(city),
3)) %>%
mutate(state = fct_lump_min(as.factor(state),
3)) %>%
print(n = 21)
#> # A tibble: 21 x 2
#> city state
#> <fct> <fct>
#> 1 New York NY
#> 2 Other Other
#> 3 Los Angeles CA
#> 4 New York NY
#> 5 Chicago IL
#> 6 San Francisco CA
#> 7 New York NY
#> 8 Chicago IL
#> 9 Los Angeles CA
#> 10 New York NY
#> 11 Chicago IL
#> 12 San Francisco CA
#> 13 New York NY
#> 14 Chicago IL
#> 15 Los Angeles CA
#> 16 New York NY
#> 17 Other Other
#> 18 Chicago IL
#> 19 New York NY
#> 20 Chicago IL
#> 21 San Francisco CA
Created on 2020-05-17 by the reprex package (v0.3.0)