## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----setup, include = FALSE--------------------------------------------------- library(controller) ## ----eg-dplyr----------------------------------------------------------------- library(dplyr, warn.conflicts = FALSE) shades <- c("daffodil", "purple", "magenta", "azure", "navy", "violet") recode(shades, daffodil = "yellow", purple = "purple", magenta = "pink", azure = "blue", navy = "blue", violet = "purple") ## ----eg-control--------------------------------------------------------------- library(controller) data("colour_thesaurus") control(shades, colour_thesaurus) ## ----eg-control-names--------------------------------------------------------- df <- data.frame(temp = 20, humid = 65, `wind speed` = 10, date = "2024-01-01") df control_names(df, thesaurus = data.frame( preferred = c("temperature", "humidity", "wind_speed"), variant = c("temp", "humid", "wind speed") )) ## ----eg-ci-------------------------------------------------------------------- shades_ci <- toupper(shades) control_ci(shades_ci, colour_thesaurus) ## ----eg-boundary-------------------------------------------------------------- df <- data.frame(preferred = "foo bar", variant = "foo-bar") control(c("foo bar", "foo_bar", "foobar"), df, fuzzy_boundary = TRUE, quiet = FALSE) ## ----eg-encoding-------------------------------------------------------------- df <- data.frame(preferred = "bar", variant = "fo\u00f6") control("foo", df, fuzzy_encoding = TRUE, quiet = FALSE) ## ----eg-coalesce-------------------------------------------------------------- control_matches(shades_ci, colour_thesaurus, case_insensitive = TRUE) ## ----thesaurus-preview-------------------------------------------------------- head(colour_thesaurus) ## ----eg-custom-thesaurus------------------------------------------------------ my_thesaurus <- data.frame( preferred = c("feline", "canine"), variant = c("cat", "dog") ) animals <- c("cat", "dog", "parrot") control(animals, my_thesaurus) ## ----eg-thesaurus-cols-------------------------------------------------------- my_wider_thesaurus <- data.frame( code = c("FEL", "CAN"), label = c("feline", "canine"), variant = c("cat", "dog") ) control(animals, my_wider_thesaurus, thesaurus_cols = c("label", "variant")) ## ----eg-fish------------------------------------------------------------------ nationality_zip <- system.file("extdata", "fish-nationality.zip", package = "controller") fish_nationality <- read_fish(nationality_zip) head(fish_nationality)