Get / Set value labels
val_labels(x, prefixed = FALSE) # S3 method for default val_labels(x, prefixed = FALSE) # S3 method for haven_labelled val_labels(x, prefixed = FALSE) # S3 method for data.frame val_labels(x, prefixed = FALSE) val_labels(x) <- value # S3 method for numeric val_labels(x) <- value # S3 method for character val_labels(x) <- value # S3 method for haven_labelled val_labels(x) <- value # S3 method for haven_labelled_spss val_labels(x) <- value # S3 method for data.frame val_labels(x) <- value val_label(x, v, prefixed = FALSE) # S3 method for haven_labelled val_label(x, v, prefixed = FALSE) # S3 method for data.frame val_label(x, v, prefixed = FALSE) val_label(x, v) <- value # S3 method for haven_labelled val_label(x, v) <- value # S3 method for numeric val_label(x, v) <- value # S3 method for character val_label(x, v) <- value # S3 method for data.frame val_label(x, v) <- value set_value_labels(.data, ...) add_value_labels(.data, ...) remove_value_labels(.data, ...)
| x | A vector. |
|---|---|
| prefixed | Should labels be prefixed with values? |
| value | A named vector for |
| v | A single value. |
| .data | a data frame |
| ... | name-value pairs of value labels (see examples) |
val_labels will return a named vector.
val_label will return a single character string.
set_value_labels, add_value_labels and remove_value_labels will return an updated
copy of .data.
set_value_labels, add_value_labels and remove_value_labels could be used with dplyr.
While set_value_labels will replace the list of value labels, add_value_labels and
remove_value_labels will update that list (see examples).
#> yes no don't know #> 1 3 9val_labels(v, prefixed = TRUE)#> [1] yes [3] no [9] don't know #> 1 3 9val_label(v, 2)#> NULLval_label(v, 2) <- 'maybe' val_label(v, 9) <- NULL val_labels(v) <- NULL if (require(dplyr)) { # setting value labels df <- data_frame(s1 = c("M", "M", "F"), s2 = c(1, 1, 2)) %>% set_value_labels(s1 = c(Male = "M", Female = "F"), s2 = c(Yes = 1, No = 2)) val_labels(df) # updating value labels df <- df %>% add_value_labels(s2 = c(Unknown = 9)) df$s2 # removing a value labels df <- df %>% remove_value_labels(s2 = 9) df$s2 # removing all value labels df <- df %>% set_value_labels(s2 = NULL) df$s2 }#> [1] 1 1 2