ipumsr (version 0.4.5)

set_ipums_var_attributes: Add IPUMS variable attributes to a data.frame

Description

Add variable attributes from an IPUMS DDI to the variables in a data.frame. This function is usually called automatically for you inside of the read_* functions (such as read_ipums_micro or read_nhgis), but they can be useful other times as well. For example, if you store the data in a database, you can store the data without attributes in the database and add them on after loading a subset into a data.frame.

Usage

set_ipums_var_attributes(
  data,
  var_info,
  var_attrs = c("val_labels", "var_label", "var_desc")
)

Arguments

data

A data.frame

var_info

An ipums_ddi object or a data.frame with the variable information (equivalent to getting ipums_var_info on a DDI).

var_attrs

One or more of val_labels, var_label and var_desc describing what kinds of attributes you want to add. If NULL, will not add any attributes.

Value

A tbl_df data.frame with data and IPUMS attributes

Details

Attribute val_labels adds the haven::labelled class attributes and the corresponding value labels for variables that have value labels.

Attribute var_label Adds a short summary of the variable's contents that to the attribute "label". This label is viewable in the RStudio Viewer.

Attribute var_desc Adds a longer summary of the variable's contents to the attribute "var_desc" when available.

Examples

Run this code
# NOT RUN {
  ddi_file <- ipums_example("cps_00006.xml")
  ddi <- read_ipums_ddi(ddi_file)
  cps <- read_ipums_micro(ddi, var_attrs = NULL) # Don't load with attributes

  ipums_var_desc(cps$YEAR) # Not available

  # But, we can add on attributes after loading
  cps_with_attr <- set_ipums_var_attributes(cps, ddi)
  ipums_var_desc(cps_with_attr$YEAR)

# }

Run the code above in your browser using DataLab