This function propagates error in the bivariate indirect range-restriction correction formula to allow for the computation of a pseudo compound attenuation factor in individual-correction meta-analysis. Traditional methods for estimating compound attenuation factors (i.e., dividing the observed correlation by the corrected correlation) do not work with the BVIRR correction because BVIRR has an additive term that makes the corrected correlation inappropriate for use in estimating the effect of the correction on the variance of the sampling distribution of correlations. The equation-implied adjustment for the BVIRR correction (i.e., the first derivative of the correction equation with respect to the observed correlation) underestimates the error of corrected correlations, so this function helps to account for that additional error.

```
var_error_r_bvirr(rxyi, var_e = NULL, ni, na = NA, ux = rep(1,
length(rxyi)), ux_observed = rep(TRUE, length(rxyi)), uy = rep(1,
length(rxyi)), uy_observed = rep(TRUE, length(rxyi)), qx = rep(1,
length(rxyi)), qx_restricted = rep(TRUE, length(rxyi)),
qx_type = rep("alpha", length(rxyi)), k_items_x = rep(NA,
length(rxyi)), qy = rep(1, length(rxyi)), qy_restricted = rep(TRUE,
length(rxyi)), qy_type = rep("alpha", length(rxyi)),
k_items_y = rep(NA, length(rxyi)), mean_rxyi = NULL,
mean_ux = NULL, mean_uy = NULL, mean_qxa = NULL, mean_qya = NULL,
var_rxyi = NULL, var_ux = NULL, var_uy = NULL, var_qxa = NULL,
var_qya = NULL, cor_rxyi_ux = 0, cor_rxyi_uy = 0,
cor_rxyi_qxa = 0, cor_rxyi_qya = 0, cor_ux_uy = 0,
cor_ux_qxa = 0, cor_ux_qya = 0, cor_uy_qxa = 0, cor_uy_qya = 0,
cor_qxa_qya = 0, sign_rxz = 1, sign_ryz = 1,
r_deriv_only = FALSE)
```

rxyi

Vector of observed correlations.

var_e

Vector of estimated sampling variances for rxyi values.

ni

Vector of incumbent sample sizes (necessary when variances of correlations/artifacts are not supplied).

na

Optional vector of applicant sample sizes (for estimating error variance of u ratios and applicant reliabilities).

ux

Vector of observed-score u ratios for X.

ux_observed

Logical vector in which each entry specifies whether the corresponding ux value is an observed-score u ratio (`TRUE`

) or a true-score u ratio. All entries are `TRUE`

by default.

uy

Vector of observed-score u ratios for Y.

uy_observed

Logical vector in which each entry specifies whether the corresponding uy value is an observed-score u ratio (`TRUE`

) or a true-score u ratio. All entries are `TRUE`

by default.

qx

Vector of square roots of reliability estimates for X.

qx_restricted

Logical vector determining whether each element of qx is derived from an incumbent reliability (`TRUE`

) or an applicant reliability (`FALSE`

).

qx_type, qy_type

String vector identifying the types of reliability estimates supplied (e.g., "alpha", "retest", "interrater_r", "splithalf"). See the documentation for `ma_r`

for a full list of acceptable reliability types.

k_items_x, k_items_y

Numeric vector identifying the number of items in each scale.

qy

Vector of square roots of reliability estimates for X.

qy_restricted

Logical vector determining whether each element of qy is derived from an incumbent reliability (`TRUE`

) or an applicant reliability (`FALSE`

).

mean_rxyi

Mean observed correlation.

mean_ux

Mean observed-score u ratio for X (for use in estimating sampling errors in the context of a meta-analysis).

mean_uy

Mean observed-score u ratio for Y (for use in estimating sampling errors in the context of a meta-analysis).

mean_qxa

Mean square-root applicant reliability estimate for X (for use in estimating sampling errors in the context of a meta-analysis).

mean_qya

Mean square-root applicant reliability estimate for Y (for use in estimating sampling errors in the context of a meta-analysis).

var_rxyi

Optional pre-specified variance of correlations.

var_ux

Optional pre-specified variance of observed-score u ratios for X.

var_uy

Optional pre-specified variance of observed-score u ratios for Y.

var_qxa

Optional pre-specified variance of square-root applicant reliability estimate for X.

var_qya

Optional pre-specified variance of square-root applicant reliability estimate for Y.

cor_rxyi_ux

Correlation between rxyi and ux (zero by default).

cor_rxyi_uy

Correlation between rxyi and uy (zero by default).

cor_rxyi_qxa

Correlation between rxyi and qxa (zero by default).

cor_rxyi_qya

Correlation between rxyi and qya (zero by default).

cor_ux_uy

Correlation between ux and uy (zero by default).

cor_ux_qxa

Correlation between ux and qxa (zero by default).

cor_ux_qya

Correlation between ux and qya (zero by default).

cor_uy_qxa

Correlation between uy and qxa (zero by default).

cor_uy_qya

Correlation between uy and qya (zero by default).

cor_qxa_qya

Correlation between qxa and qya (zero by default).

sign_rxz

Sign of the relationship between X and the selection mechanism.

sign_ryz

Sign of the relationship between Y and the selection mechanism.

r_deriv_only

Logical scalar determining whether to use the partial derivative with respect to rxyi only (`TRUE`

) or a full Taylor series approximation of the disattenuation formula (`FALSE`

).

A vector of corrected correlations' sampling-error variances.

Per the principles of propagation of uncertainty and assuming that \(q_{X_{a}}\), \(q_{Y_{a}}\), \(u_{X}\), \(u_{Y}\), and \(\rho_{XY_{i}}\), are independent, we can derive a linear approximation of the sampling error of \(\rho_{TP_{a}}\). We begin with the bivariate indirect range restriction formula,

$$\rho_{TP_{a}}=\frac{\rho_{XY_{i}}u_{X}u_{Y}+\lambda\sqrt{\left|1-u_{X}^{2}\right|\left|1-u_{Y}^{2}\right|}}{q_{X_{a}}q_{Y_{a}}}$$

which implies the following linear approximation of the sampling variance of \(\rho_{TP_{a}}\):

$$SE_{\rho_{TP_{a}}}^{2}=b_{1}^{2}SE_{q_{X_{a}}}^{2}+b_{2}^{2}SE_{q_{Y_{a}}}^{2}+b_{3}^{2}SE_{u_{X}}^{2}+b_{4}^{2}SE_{u_{Y}}^{2}+b_{5}^{2}SE_{\rho_{XY_{i}}}^{2}$$

where \(b_{1}\), \(b_{2}\), \(b_{3}\), \(b_{4}\), and \(b_{5}\) are the first-order partial derivatives of the disattenuation formula with respect to \(q_{X_{a}}\), \(q_{Y_{a}}\), \(u_{X}\), \(u_{Y}\), and \(\rho_{XY_{i}}\), respectively. These partial derivatives are computed as follows:

$$b_{1}=\frac{\partial\rho_{TP_{a}}}{\partial q_{X_{a}}}=-\frac{\rho_{TP_{a}}}{q_{X_{a}}}$$ $$b_{2}=\frac{\partial\rho_{TP_{a}}}{\partial q_{Y_{a}}}=-\frac{\rho_{TP_{a}}}{q_{Y_{a}}}$$ $$b_{3}=\frac{\partial\rho_{TP_{a}}}{\partial u_{X}}=\left[\rho_{XY_{i}}u_{Y}-\frac{\lambda u_{X}\left(1-u_{X}^{2}\right)\sqrt{\left|1-u_{Y}^{2}\right|}}{\left|1-u_{X}^{2}\right|^{1.5}}\right]/\left(q_{X_{a}}q_{Y_{a}}\right)$$ $$b_{4}=\frac{\partial\rho_{TP_{a}}}{\partial u_{Y}}=\left[\rho_{XY_{i}}u_{X}-\frac{\lambda u_{Y}\left(1-u_{Y}^{2}\right)\sqrt{\left|1-u_{X}^{2}\right|}}{\left|1-u_{Y}^{2}\right|^{1.5}}\right]/\left(q_{X_{a}}q_{Y_{a}}\right)$$ $$b_{5}=\frac{\partial\rho_{TP_{a}}}{\partial\rho_{XY_{i}}}=\frac{u_{X}u_{Y}}{q_{X_{a}}q_{Y_{a}}}$$

Dahlke, J. A., & Wiernik, B. M. (2018). *One of these artifacts is not like the others:
Accounting for indirect range restriction in organizational and psychological research*.
Manuscript submitted for review.

```
# NOT RUN {
var_error_r_bvirr(rxyi = .3, var_e = var_error_r(r = .3, n = 100), ni = 100,
ux = .8, uy = .8,
qx = .9, qx_restricted = TRUE,
qy = .9, qy_restricted = TRUE,
sign_rxz = 1, sign_ryz = 1)
# }
```

Run the code above in your browser using DataLab