Title: | A Taylor-Russell Function for Multiple Predictors |
---|---|
Description: | The Taylor Russell model is a widely used method for assessing test validity in personnel selection tasks. The three functions in this package extend this model in a number of notable ways. TR() estimates test validity for a single selection test via the original Taylor Russell model. It extends this model by allowing users greater flexibility in argument choice. For example, users can specify any three of the four parameters (base rate, selection ratio, criterion validity, and positive predictive value) of the Taylor Russell model and estimate the remaining parameter (see the help file for examples). The TaylorRussell() function generalizes the original Taylor Russell model to allow for multiple selection tests (predictors). To our knowledge, this is the first generalization of the Taylor Russell model to allow for three or more selection tests (it is also the first to correctly handle models with two selection tests). TRDemo() is a 'shiny' program for illustrating the underlying logic of the Taylor Russell model. Taylor, HC and Russell, JT (1939) "The relationship of validity coefficients to the practical effectiveness of tests in selection: Discussion and tables" <doi:10.1037/h0057079>. |
Authors: | Niels Waller [aut, cre], Ziyu Ren [ctb] |
Maintainer: | Niels Waller <[email protected]> |
License: | GPL (>= 2) |
Version: | 1.2.1 |
Built: | 2024-11-22 04:36:42 UTC |
Source: | https://github.com/cran/TaylorRussell |
Generalized Taylor-Russell Function for Multiple Predictors
TaylorRussell(SR = NULL, BR = NULL, R = NULL, PrintLevel = 0, Digits = 3)
TaylorRussell(SR = NULL, BR = NULL, R = NULL, PrintLevel = 0, Digits = 3)
SR |
(vector) A vector of Selection Ratios for N selection tests. |
BR |
(scalar) The Base Rate of criterion performance. |
R |
(matrix) An (N + 1) x (N + 1) correlation matrix in which the predictor/criterion correlations are in column N + 1 of R. |
PrintLevel |
(integer). If |
Digits |
(integer) The number of significant digits in the printed output. |
The following output variables are returned.
BR: (scalar) The Base Rate of criterion performance.
SR: (vector) The user-defined vector of predictor Selection Ratios.
R: (matrix) The input correlation matrix.
TP: (scalar) The percentage of True Positives.
FP: (scalar) The percentage of False Positives.
TN: (scalar) The percentage of True Negatives.
FN: (scalar) The percentage of False Negatives.
Accepted: The percentage of selected individuals (i.e., TP + FP).
PPV: The Positive Predictive Value. This is the probability that a selected individual is a True Positive.
Sensitivity: The test battery Sensitivity rate. This is the probability that a person who is acceptable on the criterion is called acceptable by the test battery.
Specificity: The test battery Specificity rate. This is the probability that a person who falls below the criterion threshold is deemed unacceptable by the test battery.
Niels G. Waller ([email protected])
Taylor, H. C. & Russell, J. (1939). The relationship of validity coefficients to the practical effectiveness of tests in selection: Discussion and tables. Journal of Applied Psychology, 23(5), 565–578.
Thomas, J. G., Owen, D., & Gunst, R. (1977). Improving the use of educational tests as selection tools. Journal of Educational Statistics, 2(1), 55–77.
# Example 1 # Reproduce Table 3 (p. 574) of Taylor and Russell r <- seq(0, 1, by = .05) sr <- c(.05, seq(.10, .90, by = .10), .95) num.r <- length(r) num.sr <- length(sr) old <- options(width = 132) Table3 <- matrix(0, num.r, num.sr) for(i in 1 : num.r){ for(j in 1:num.sr){ Table3[i,j] <- TaylorRussell( SR = sr[j], BR = .20, R = matrix(c(1, r[i], r[i], 1), 2, 2), PrintLevel = 0, Digits = 3)$PPV }# END over j }# END over i rownames(Table3) <- r colnames(Table3) <- sr Table3 |> round(2) # Example 2 # Thomas, Owen, & Gunst (1977) -- Example 1: Criterion = GPA R <- matrix(c(1, .5, .7, .5, 1, .7, .7, .7, 1), 3, 3) # See Table 6: Target Acceptance = 20% out.20 <- TaylorRussell( SR = c(.354, .354), # the marginal probabilities BR = .60, R = R, PrintLevel = 1) # See Table 6: Target Acceptance = 50% out.50 <- TaylorRussell( SR = c(.653, .653), # the marginal probabilities BR = .60, R = R, PrintLevel = 1) options(old)
# Example 1 # Reproduce Table 3 (p. 574) of Taylor and Russell r <- seq(0, 1, by = .05) sr <- c(.05, seq(.10, .90, by = .10), .95) num.r <- length(r) num.sr <- length(sr) old <- options(width = 132) Table3 <- matrix(0, num.r, num.sr) for(i in 1 : num.r){ for(j in 1:num.sr){ Table3[i,j] <- TaylorRussell( SR = sr[j], BR = .20, R = matrix(c(1, r[i], r[i], 1), 2, 2), PrintLevel = 0, Digits = 3)$PPV }# END over j }# END over i rownames(Table3) <- r colnames(Table3) <- sr Table3 |> round(2) # Example 2 # Thomas, Owen, & Gunst (1977) -- Example 1: Criterion = GPA R <- matrix(c(1, .5, .7, .5, 1, .7, .7, .7, 1), 3, 3) # See Table 6: Target Acceptance = 20% out.20 <- TaylorRussell( SR = c(.354, .354), # the marginal probabilities BR = .60, R = R, PrintLevel = 1) # See Table 6: Target Acceptance = 50% out.50 <- TaylorRussell( SR = c(.653, .653), # the marginal probabilities BR = .60, R = R, PrintLevel = 1) options(old)
A Taylor-Russell function can be computed with any three of the following
four variables: the Base Rate (BR); the Selection Ratio (SR);
the Criterion Validity (CV) and the Positive Predictive Value (PPV).
The TR()
function will compute a Taylor Russell function
when given any three of these parameters and estimate the remaining parameter.
TR(BR = NULL, SR = NULL, CV = NULL, PPV = NULL, PrintLevel = 1, Digits = 3)
TR(BR = NULL, SR = NULL, CV = NULL, PPV = NULL, PrintLevel = 1, Digits = 3)
BR |
(numeric): The Base Rate of successful criterion performance (i.e., within the target population, the proportion of individuals who can successfully execute the job demands). |
SR |
(numeric): The Selection Ratio. A real number between 0 and 1 that denotes the test selection ratio (i.e., the proportion of hired candidates from the target population). |
CV |
(numeric) The correlation (Criterion Validity) between the selection test and a measure of job performance. |
PPV |
(numeric): The Positive Predicted Value. The PPV denotes the probability that a hired candidate has the necessary skills to succeed on the job. |
PrintLevel |
(integer): If |
Digits |
(integer) Controls the number of significant digits in the printed output. |
When any three of the main program arguments (BR, SR, CV, PPV) are specified (with the
remaining argument given a NULL value), TR()
will calculate
the model-implied value for the remaining variable. It will also compute the test Sensitivity
(defined as the probability that a qualified individual will be hired) and
test Specificity (defined as the probability that an unqualified individual
will not be hired), the True Positive rate, the False Positive rate, the
True Negative rate, and the False Negative rate.
BR The base rate.
SR The selection ratio.
CV The criterion validity.
PPV The positive predictive value.
Sensitivity The test sensitivity rate.
Specificity The test specificity rate.
TP The selection True Positive rate.
FP The selection False Positive rate.
TN The selection True Negative rate.
FN The selection False Negative rate.
Niels G. Waller ([email protected])
Taylor, H. C. & Russell, J. (1939). The relationship of validity coefficients to the practical effectiveness of tests in selection: Discussion and tables. Journal of Applied Psychology, 23, 565–578.
## Example 1: TR(BR = .3, SR = NULL, CV = .3, PPV = .5, PrintLevel = 1, Digits = 3) ## Example 2: TR(BR = NULL, SR = .1012, CV = .3, PPV = .5, PrintLevel = 1, Digits = 3) ## Example 3: A really bad test! # If the BR > PPV then the actual test # validity is zero. Thus, do not use the test! TR(BR = .50, SR = NULL, CV = .3, PPV = .25, PrintLevel = 1, Digits = 3)
## Example 1: TR(BR = .3, SR = NULL, CV = .3, PPV = .5, PrintLevel = 1, Digits = 3) ## Example 2: TR(BR = NULL, SR = .1012, CV = .3, PPV = .5, PrintLevel = 1, Digits = 3) ## Example 3: A really bad test! # If the BR > PPV then the actual test # validity is zero. Thus, do not use the test! TR(BR = .50, SR = NULL, CV = .3, PPV = .25, PrintLevel = 1, Digits = 3)
TRDemo()
is an R 'shiny' function for illustrating the bivariate
(i.e., single predictor) Taylor-Russell model for
personnel selection. The function can be called
from the command prompt (>
) by typing:
TRDemo()
After calling the function, users are asked to enter values for 3 of the following 4 variables:
The Base Rate (BR) of successful criterion performance (i.e., within the target population, the proportion of individuals who successfully execute the job demands).
The Selection Ratio (SR; i.e., the proportion of hired candidates within the target population).
The Criterion Validity (CV; the correlation between the selection test and an operationalized measure of job performance).
The Positive Predicted Value (PPV; The probability that a hired individual can successfully execute the job demands).
TRDemo()
TRDemo()
TRDemo()
is a 'shiny' program for demonstrating the
classic Taylor-Russell model for personnel selection.
TRDemo()
calculates the model-implied value for the omitted
variable and prints all model parameters (e.g., BR, SR,
CV, and PPV) to
screen. Given these parameters, the function also reports the test Sensitivity
(defined as the probability that a qualified individual will be hired) and
test Specificity (defined as the probability that an unqualified individual
will not be hired). Finally, the function plots a
correlation ellipse (associated with the CV) showing the relative
proportions of True Positives (TP; hired individuals who are
qualified for the job), False Positives (FP; hired individuals who are not
qualified for the job), True Negatives (TN; non hired individuals who are
not qualified for the job), and
False Negatives (FN; non hired individuals who are qualified for the job).
No return value.
Niels G. Waller ([email protected])
Ziyu Ren
Taylor, H. C. & Russell, J. (1939). The relationship of validity coefficients to the practical effectiveness of tests in selection: Discussion and tables. Journal of Applied Psychology, 23, 565–578.
# Type TRDemo() from the command prompt (>) to run the 'shiny' app # in interactive mode.
# Type TRDemo() from the command prompt (>) to run the 'shiny' app # in interactive mode.