Skip to contents

This function translates a vector of 4-digit ISCO88 codes to ORDC codes using the translation table stored in all_schema$isco88_to_ordc. ORDC stands for Oslo Register Data Class.

Usage

isco88_to_ordc(x, income = NULL, label = FALSE, to_factor = FALSE)

Arguments

x

A character vector of 4-digit ISCO codes.

income

A numeric vector with the income corresponding to each respondent. See the details section for more information on how this is used.

label

A logical value indicating whether to return the labels of the translated ORDC codes (default is FALSE).

to_factor

A logical value indicating whether to return a factor instead of a character. The order of the labels is taken from the labels for ORDC found in all_labels (default is FALSE).

Value

A character vector of ORDC codes.

Details

The translation implemented in this function comes from the tables found in https://journals.sagepub.com/doi/suppl/10.1177/00031224211020012/suppl_file/sj-pdf-1-asr-10.1177_00031224211020012.pdf. That table is the appendix of the paper "Wealth Accumulation and Opportunity Hoarding: Class-Origin Wealth Gaps over a Quarter of a Century in a Scandinavian Country" from Nordli and Toft.

If income is specified, occupations in the economic upper class, the economic upper-middle class and the economic lower-middle class are grouped according to their income. The top 10 percent are assigned to the upper class, the next 40 percent to the upper-middle class, and the lowest 50 percent of earners to the lower-middle class. If income is not specified, a direct match to the ORDC class schema is performed.

For more information on this class schema, please check the references below:

  • Hansen, M. N., & Toft, M. (2021). Wealth Accumulation and Opportunity Hoarding: Class-Origin Wealth Gaps over a Quarter of a Century in a Scandinavian Country. American Sociological Review, 86(4), 603–638. https://doi.org/10.1177/00031224211020012

Examples

library(dplyr)

# isco88
ess %>%
  transmute(
    isco88,
    ordc = isco88_to_ordc(isco88, label = FALSE),
    ordc_label = isco88_to_ordc(isco88, label = TRUE)
  )
#> # A tibble: 48,285 × 3
#>    isco88 ordc  ordc_label                  
#>    <chr>  <chr> <chr>                       
#>  1 5169   11    Unskilled working class     
#>  2 1222   6     Upper-middle class: economic
#>  3 8120   10    Skilled working class       
#>  4 7141   10    Skilled working class       
#>  5 6111   12    Primary-sector employees    
#>  6 6111   12    Primary-sector employees    
#>  7 9313   11    Unskilled working class     
#>  8 1221   6     Upper-middle class: economic
#>  9 1221   6     Upper-middle class: economic
#> 10 6111   12    Primary-sector employees    
#> # ℹ 48,275 more rows