Learn R Programming

retroharmonize (version 0.2.0)

harmonize_var_names: Harmonize the variable names of surveys

Description

The function harmonizes the variable names of surveys (of class survey) that are imported from an external file as a wave.

Usage

harmonize_var_names(
  waves,
  metadata,
  old = "var_name_orig",
  new = "var_name_suggested",
  rowids = TRUE
)

Arguments

waves

A list of surveys imported with read_surveys.

metadata

A metadata table created by metadata_create and binded together for all surveys in waves.

old

The column name in metadata that contains the old, not harmonized variable names.

new

The column name in metadata that contains the new, harmonized variable names.

rowids

Rename var labels of original vars rowid to simply uniqid?

Value

The list of surveys with harmonized variable names.

Details

If the metadata that contains subsetting information is subsetted, then it will subset the surveys in waves.

See Also

Other harmonization functions: collect_val_labels(), harmonize_na_values(), harmonize_values(), label_normalize(), suggest_permanent_names(), suggest_var_names()

Examples

Run this code
# NOT RUN {
examples_dir <- system.file("examples", package = "retroharmonize")
survey_list <- dir(examples_dir)[grepl("\\.rds", dir(examples_dir))]

example_surveys <- read_surveys(
  file.path( examples_dir, survey_list), 
  save_to_rds = FALSE)
metadata <- lapply ( X = example_surveys, FUN = metadata_create )
metadata <- do.call(rbind, metadata)

metadata$var_name_suggested <- label_normalize(metadata$var_name)

metadata$var_name_suggested[metadata$label_orig == "age education"] <- "age_education"

harmonize_var_names(waves = example_surveys, 
                    metadata = metadata )
# }

Run the code above in your browser using DataLab