Get IPUMS metadata information about variables loaded into R. Will try to read the metadata from the loaded datasets, but it is more reliable to load the DDI into a separate object and use it instead.

ipums_var_info(object, vars = NULL)

ipums_var_desc(object, var = NULL)

ipums_var_label(object, var = NULL)

ipums_val_labels(object, var = NULL)

Arguments

object

A DDI object (loaded with read_ipums_ddi), a data.frame with ipums metadata attached, or a single column from an ipums data.frame.

vars

dplyr select-style notation for the variables to give information about

var

select-style notation for a single variable

ipums_var_info() loads all available variable information for one or more variables into a data.frame. If object is a vector, it will include the variable label, variable description and value labels. If object is a data.frame, it will include it for all variables (or only those specified by vars). If it is a DDI, it will also include information used to read the data from disk, including start/end position in the fixed-width file, implied decimals and variable type.

ipums_var_desc() loads the variable description for a single variable.

ipums_var_label() loads the short variable label for a single variable.

ipums_val_labels() loads the value labels for a single variable.

Note that many R functions drop attributes that provide this information. In order to make sure that they are available, it is best to keep a copy of the separate from the data your are manipulating using read_ipums_ddi. Then you can refer to the IPUMS documentation in this object.

Value

ipums_var_info returns a tbl_df data frame with variable information, and the other functions return a length 1 character vector.

Examples

ddi <- read_ipums_ddi(ipums_example("cps_00006.xml"))

ipums_var_info(ddi)
#> # A tibble: 8 × 10
#>   var_name var_label        var_desc val_labels code_instr start   end imp_decim
#>   <chr>    <chr>            <chr>    <list>     <chr>      <dbl> <dbl>     <dbl>
#> 1 YEAR     Survey year      "YEAR r… <tibble>   "\nYEAR i…     1     4         0
#> 2 SERIAL   Household seria… "SERIAL… <tibble>   "\nSERIAL…     5     9         0
#> 3 HWTSUPP  Household weigh… "HWTSUP… <tibble>   "\nHWTSUP…    10    19         4
#> 4 STATEFIP State (FIPS cod… "STATEF… <tibble>    NA           20    21         0
#> 5 MONTH    Month            "MONTH … <tibble>    NA           22    23         0
#> 6 PERNUM   Person number i… "PERNUM… <tibble>   "\nPERNUM…    24    25         0
#> 7 WTSUPP   Supplement Weig… "WTSUPP… <tibble>   "\nWTSUPP…    26    35         4
#> 8 INCTOT   Total personal … "INCTOT… <tibble>   "\n999999…    36    43         0
#> # … with 2 more variables: var_type <chr>, rectypes <lgl>
ipums_var_desc(ddi, MONTH)
#> [1] "MONTH indicates the calendar month of the CPS interview."
ipums_var_label(ddi, MONTH)
#> [1] "Month"
ipums_val_labels(ddi, MONTH)
#> # A tibble: 12 × 2
#>      val lbl      
#>    <dbl> <chr>    
#>  1     1 January  
#>  2     2 February 
#>  3     3 March    
#>  4     4 April    
#>  5     5 May      
#>  6     6 June     
#>  7     7 July     
#>  8     8 August   
#>  9     9 September
#> 10    10 October  
#> 11    11 November 
#> 12    12 December