Translate 4-digit ISCO88/ISCO68 to EGP11/EGP7/EGP5/EGP3
isco88_to_egp.Rd
This function translates a vector of 4-digit ISCO88/ISCO68 codes to EGP11/EGP7/EGP5/EGP3 codes using the translation tables stored in all_schema$isco88_to_egp11 / all_schema$isco68_to_egp11 / all_schema$egp11_to_egp7 / all_schema$egp11_to_egp5 / all_schema$egp11_to_egp3
.
Usage
isco88_to_egp(
x,
self_employed,
n_employees,
n_classes = 11,
label = FALSE,
to_factor = FALSE
)
isco68_to_egp(
x,
self_employed,
n_employees,
n_classes = 11,
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.
- n_classes
a numeric value indicating the number of EGP classes to obtain. Default is 11 EGP classes. The possible values are 11 classes, 7 classes, 5 classes and 3 classes. For more information, see the details section.
- label
A logical value indicating whether to return the labels of the translated EGP 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 EGP found in
all_labels
(default isFALSE
).
Details
This function works by first translating to EGP11 and then translating to other EGP variants, if the user has requested this through the n_classes
argument.
This translation was taken from the iscogen
Stata package. For more details, check out the package documentation and search for ISCO88/IS68 -> EGP11
. For translations between EGP11 and EGP7/EGP5/EGP3, see the source of the occupar
R package here.
Users can see the translation used in this package in all_schema$egp11_to_egp7
, all_schema$egp11_to_egp5
and all_schema$egp11_to_egp3
. Moreover, the labels used can be found in all_labels$egp11
, all_labels$egp7
, all_labels$egp5
and all_labels$egp3
.
For more details on this class schema, please check the references below:
Erikson, R., Goldthorpe, J.H. and Portocarero, L (1979) Intergenerational Class Mobility inThree Western European Societies: England, France and Sweden’, British Journal of Sociology, 30.
Erikson, R., J.H. Goldthorpe, L. Portocarero (1983) Intergenerational Class Mobility and the Convergence Thesis: England, France and Sweden. British Journal of Sociology, 34(3): 303-343.
Erikson R, Goldthorpe JH (1992) The Constant Flux: A Study of Class Mobility in Industrial Societies. Oxford: Clarendon Press.
Goldthorpe class scheme. Oxford Reference. Retrieved 19 May. 2023, from https://www.oxfordreference.com/view/10.1093/oi/authority.20110803095858703.
Goldthorpe JH (2007) Social class and the differentiation of employment contracts. In: Goldthorpe JH (ed.) On Sociology: Volume Two. Stanford: Stanford University Press,101–124.
Examples
library(dplyr)
# isco88
ess %>% transmute(
isco88,
egp11 = isco88_to_egp(isco88, self_employed, emplno, label = FALSE),
egp7 = isco88_to_egp(isco88, self_employed, emplno, n_classes = 7, label = FALSE),
egp5 = isco88_to_egp(isco88, self_employed, emplno, n_classes = 5, label = FALSE),
egp3 = isco88_to_egp(isco88, self_employed, emplno, n_classes = 3, label = FALSE),
)
#> # A tibble: 48,285 × 5
#> isco88 egp11 egp7 egp5 egp3
#> <chr> <chr> <chr> <chr> <chr>
#> 1 5169 9 6 4 3
#> 2 1222 1 1 1 1
#> 3 8120 8 5 4 3
#> 4 7141 8 5 4 3
#> 5 6111 10 7 5 3
#> 6 6111 10 7 5 3
#> 7 9313 9 6 4 3
#> 8 1221 11 7 3 2
#> 9 1221 11 7 3 2
#> 10 6111 10 7 5 3
#> # ℹ 48,275 more rows
# isco68
ess %>% transmute(
isco68,
egp11 = isco68_to_egp(isco68, self_employed, emplno, label = FALSE),
egp7 = isco68_to_egp(isco68, self_employed, emplno, n_classes = 7, label = FALSE),
egp5 = isco68_to_egp(isco68, self_employed, emplno, n_classes = 5, label = FALSE),
egp3 = isco68_to_egp(isco68, self_employed, emplno, n_classes = 3, label = FALSE)
)
#> # A tibble: 48,285 × 5
#> isco68 egp11 egp7 egp5 egp3
#> <chr> <chr> <chr> <chr> <chr>
#> 1 5890 6 4 2 1
#> 2 2120 2 2 1 1
#> 3 7200 8 5 4 3
#> 4 9310 8 5 4 3
#> 5 6220 10 7 5 3
#> 6 6220 10 7 5 3
#> 7 9595 9 6 4 3
#> 8 6000 11 7 3 2
#> 9 6000 11 7 3 2
#> 10 6220 10 7 5 3
#> # ℹ 48,275 more rows