Fixes if a factor list does not have named levels or has special characters in the names

fix_name_labels(x, pattern = "(\\W|_)", replacement = ".")

Arguments

x

the vector or list to fix

pattern

regex pattern to replace with full stops (defaults to non-word characters and underscores)

replacement

the character to replace (defaults to .)

Value

a named list with fixed names

Examples

source <- list("full.stop", " space ", "under_score", "plus+", "dash-", "tab\t", "line\nbreak") fix_name_labels(source)
#> $full.stop #> [1] "full.stop" #> #> $.space. #> [1] " space " #> #> $under.score #> [1] "under_score" #> #> $plus. #> [1] "plus+" #> #> $dash. #> [1] "dash-" #> #> $tab. #> [1] "tab\t" #> #> $line.break #> [1] "line\nbreak" #>