characterize function

Character conversion of labelled data

Character conversion of labelled data

Convert labelled variables to character or factor

characterize(x, ...) factorize(x, ...) ## Default S3 method: characterize(x, ...) ## S3 method for class 'data.frame' characterize(x, ...) ## Default S3 method: factorize(x, coerce_character = FALSE, ...) ## S3 method for class 'data.frame' factorize(x, ...)

Arguments

  • x: A vector or data frame.
  • ...: additional arguments passed to methods
  • coerce_character: A logical indicating whether to additionally coerce character columns to factor (in factorize). Default FALSE.

Returns

a character vector (for characterize) or factor vector (for factorize)

Details

characterize converts a vector with a labels attribute of named levels into a character vector. factorize does the same but to factors. This can be useful at two stages of a data workflow: (1) importing labelled data from metadata-rich file formats (e.g., Stata or SPSS), and (2) exporting such data to plain text files (e.g., CSV) in a way that preserves information.

Examples

## vector method x <- structure(1:4, labels = c("A" = 1, "B" = 2, "C" = 3)) characterize(x) factorize(x) ## data frame method x <- data.frame(v1 = structure(1:4, labels = c("A" = 1, "B" = 2, "C" = 3)), v2 = structure(c(1,0,0,1), labels = c("foo" = 0, "bar" = 1))) str(factorize(x)) str(characterize(x)) ## Application csv_file <- tempfile(fileext = ".csv") ## comparison of exported file contents import(export(x, csv_file)) import(export(factorize(x), csv_file))

See Also

gather_attrs()