Expected performance under compensatory top-down selection
Source:R/selection-systems.R
compensatory_selection.RdComputes the expected standardized criterion performance of applicants selected on a weighted predictor composite. This is the compensatory cell of the package taxonomy: scores on stronger predictors can offset lower scores on weaker ones.
Usage
compensatory_selection(
predictor_cor,
validities,
weights = NULL,
selection_ratio,
n_applicants = NA_real_,
cost_per_applicant = 0,
sdy = NULL,
applicant_n = NULL
)Arguments
- predictor_cor
Predictor intercorrelation matrix, denoted
R_XX.- validities
Vector of predictor-criterion correlations, denoted
r_xi,y.- weights
Composite weights. Defaults to validity weights.
- selection_ratio
Overall selection ratio for top-down selection on the composite.
- n_applicants
Number of applicants, used for cost calculations. Preferred name in v0.4.0.
- cost_per_applicant
Cost per assessed applicant.
- sdy
Optional monetary value of one criterion standard deviation.
- applicant_n
Legacy alias for
n_applicants.
References
Naylor, J. C., & Shine, L. C. (1965). A table for determining the increase in mean criterion score obtained by using a selection device. Journal of Industrial Psychology, 3, 33-42.
Ock, J., & Oswald, F. L. (2018). The utility of personnel selection decisions: Comparing compensatory and multiple-hurdle selection models. Journal of Personnel Psychology, 17(4), 172-182.
Examples
# Literature: Naylor and Shine (1965); Ock and Oswald (2018).
# Use the first call as a minimal example; the longer block illustrates
# how to interpret the function in the substantive setting discussed in the literature.
# Minimal example (Naylor and Shine (1965); Ock and Oswald (2018)).
Rxx <- matrix(c(1, .30, .30, 1), 2, 2)
compensatory_selection(Rxx, validities = c(.40, .30), selection_ratio = .20)
#> <psu_comparison>
#> Model: Compensatory top-down selection
#> composite_validity: 0.440567
#> selection_ratio: 0.2
#> selected_mean_z: 1.39981
#> expected_criterion_z: 0.61671
#> n_applicants: NA
#> applicant_n: NA
#> n_selected: NA
#> cost_per_applicant: 0
#> total_cost: NA
#> net_utility: NA
# Substantive example with costs and SDy.
Rxx <- matrix(c(
1.00, .30, .20,
.30, 1.00, .25,
.20, .25, 1.00
), 3, 3, byrow = TRUE)
compensatory_selection(
predictor_cor = Rxx,
validities = c(.45, .35, .25),
weights = c(1, 1, 1),
selection_ratio = .20,
n_applicants = 500,
cost_per_applicant = 250,
sdy = 60000
)
#> <psu_comparison>
#> Model: Compensatory top-down selection
#> composite_validity: 0.494975
#> selection_ratio: 0.2
#> selected_mean_z: 1.39981
#> expected_criterion_z: 0.69287
#> n_applicants: 500
#> applicant_n: 500
#> n_selected: 100
#> cost_per_applicant: 250
#> total_cost: 125000
#> sdy: 60000
#> net_utility: 4032220