read_ipums_ddi {ipumsr} | R Documentation |
Read metadata about an IPUMS microdata extract from a DDI codebook (.xml) file
Description
Reads the metadata about an IPUMS extract from a DDI codebook into an ipums_ddi object.
These metadata contains parsing instructions for the associated fixed-width data file, contextual labels for variables and values in the data, and general extract information.
See Downloading IPUMS files below for information about downloading IPUMS DDI codebook files.
Usage
read_ipums_ddi(
ddi_file,
lower_vars = FALSE,
file_select = deprecated(),
data_layer = deprecated()
)
Arguments
ddi_file |
Path to a DDI .xml file downloaded from IPUMS. See Downloading IPUMS files below. |
lower_vars |
Logical indicating whether to convert variable names to
lowercase. Defaults to |
data_layer , file_select |
Reading
DDI files contained in a .zip archive has been deprecated. Please provide
the full path to the .xml file to be loaded in |
Value
An ipums_ddi object with metadata information.
Downloading IPUMS files
The DDI codebook (.xml) file provided with IPUMS microdata extracts can be downloaded through the IPUMS extract interface or (for some collections) within R using the IPUMS API.
If using the IPUMS extract interface:
Download the DDI codebook by right clicking on the DDI link in the Codebook column of the extract interface and selecting Save as... (on Safari, you may have to select Download Linked File As...). Be sure that the codebook is downloaded in .xml format.
If using the IPUMS API:
For supported collections, use
download_extract()
to download a completed extract via the IPUMS API. This automatically downloads both the DDI codebook and the data file from the extract and returns the path to the codebook file.
See Also
read_ipums_micro()
, read_ipums_micro_chunked()
and
read_ipums_micro_yield()
to read data from IPUMS microdata extracts.
ipums_var_info()
and ipums_file_info()
to view metadata about an
ipums_ddi object.
ipums_list_files()
to list files in an IPUMS extract.
Examples
# Example codebook file
ddi_file <- ipums_example("cps_00157.xml")
# Load data into an `ipums_ddi` obj
ddi <- read_ipums_ddi(ddi_file)
# Use the object to load its associated data
cps <- read_ipums_micro(ddi)
head(cps)
# Or get metadata information directly
ipums_var_info(ddi)
ipums_file_info(ddi)[1:2]
# If variable metadata have been lost from a data source, reattach from
# its corresponding `ipums_ddi` object:
cps <- zap_ipums_attributes(cps)
ipums_var_label(cps$STATEFIP)
cps <- set_ipums_var_attributes(cps, ddi$var_info)
ipums_var_label(cps$STATEFIP)