Skip to contents

This function translates a vector of 4-digit ISCO08/ISCO88 codes to IPICS codes using the translation tables stored in all_schema$isco08_to_ipics / all_schema$isco88_to_ipics.

Usage

isco08_to_ipics(
  x,
  self_employed,
  n_employees,
  label = FALSE,
  to_factor = FALSE
)

isco88_to_ipics(
  x,
  self_employed,
  n_employees,
  label = FALSE,
  to_factor = FALSE
)

Arguments

x

A character vector of 4-digit ISCO codes.

self_employed

A numeric vector indicating whether each individual is self-employed (1) or an employee (0).

n_employees

A numeric vector indicating the number of employees under each respondent.

label

A logical value indicating whether to return the labels of the translated IPICS 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 IPICS found in all_labels (default is FALSE).

Value

A character vector of IPICS codes.

Details

These translation were created from the CSV files shared by Oscar Smallenbroek name "ISCO08 to IPICS.csv" and "ISCO88 to IPICS.csv". For more info, please contact the author.

For more details on the class schema please check the references below:

  • Hertel, Florian R. 2017. Social Mobility in the 20th Century: Class Mobility and Occupational Change in the United States and Germany. Springer VS.

Examples

library(dplyr)

# isco08
ess %>% transmute(
  isco08,
  ipics = isco08_to_ipics(isco08, self_employed, emplno),
  ipics_label = isco08_to_ipics(isco08, self_employed, emplno, label = TRUE)
)
#> # A tibble: 48,285 × 3
#>    isco08 ipics ipics_label              
#>    <chr>  <chr> <chr>                    
#>  1 5414   8     Unskilled Servants       
#>  2 1321   1     Managers & Administrators
#>  3 3135   3     Skilled Manual           
#>  4 7131   3     Skilled Manual           
#>  5 6111   10    Farmers                  
#>  6 6111   10    Farmers                  
#>  7 9313   4     Unskilled Manual         
#>  8 1311   10    Farmers                  
#>  9 1311   10    Farmers                  
#> 10 6111   10    Farmers                  
#> # ℹ 48,275 more rows


# isco88
ess %>% transmute(
  isco88,
  ipics = isco88_to_ipics(isco88, self_employed, emplno),
  ipics_label = isco88_to_ipics(isco88, self_employed, emplno, label = TRUE)
)
#> # A tibble: 48,285 × 3
#>    isco88 ipics ipics_label              
#>    <chr>  <chr> <chr>                    
#>  1 5169   8     Unskilled Servants       
#>  2 1222   1     Managers & Administrators
#>  3 8120   3     Skilled Manual           
#>  4 7141   3     Skilled Manual           
#>  5 6111   10    Farmers                  
#>  6 6111   10    Farmers                  
#>  7 9313   4     Unskilled Manual         
#>  8 1221   10    Farmers                  
#>  9 1221   10    Farmers                  
#> 10 6111   10    Farmers                  
#> # ℹ 48,275 more rows