Identifies character columns that look categorical, protecting id-like names and leading-zero codes.
Usage
detect_factors(
data,
max_levels = 50,
max_unique_ratio = 0.2,
protect_patterns = c("id$", "uid$", "code$", "ref$", "key$"),
keep_leading_zero_chars = TRUE
)Arguments
- data
A data frame or tibble.
- max_levels
Maximum distinct values for a factor candidate. Default 50.
- max_unique_ratio
Maximum unique/non-NA ratio for a factor. Default
0.2.- protect_patterns
Regexes for names kept as character. Default
c("id$", "uid$", "code$", "ref$", "key$").- keep_leading_zero_chars
Keep a character column when any value is a leading-zero digit string (e.g.
"00123"). DefaultTRUE.
