composite_r_matrix: Matrix formula to estimate the correlation between two...

View source: R/composites.R

composite_r_matrixR Documentation

Matrix formula to estimate the correlation between two weighted or unweighted composite variables

Description

This function computes the weighted (or unweighted, by default) composite correlation between a set of X variables and a set of Y variables.

Usage

composite_r_matrix(
  r_mat,
  x_col,
  y_col,
  wt_vec_x = rep(1, length(x_col)),
  wt_vec_y = rep(1, length(y_col))
)

Arguments

r_mat

Correlation matrix from which composite correlations are to be computed.

x_col

Column indices of variables from 'r_mat' in the X composite (specify a single variable if Y is an observed variable rather than a composite).

y_col

Column indices of variables from 'r_mat' in the Y composite (specify a single variable if Y is an observed variable rather than a composite).

wt_vec_x

Weights to be used in forming the X composite (by default, all variables receive equal weight).

wt_vec_y

Weights to be used in forming the Y composite (by default, all variables receive equal weight).

Details

This is computed as:

r_composite = (t(wt_x) Rxy wt_y) / (sqrt(t(wt_x) Rxx wt_x) * sqrt(t(wt_y) Ryy wt_y))

where r_composite is the composite correlation, wt is a vector of weights, and R is a correlation matrix. The subscripts of wt and R indicate the variables indexed within the vector or matrix.

Value

A composite correlation

References

Mulaik, S. A. (2010). Foundations of factor analysis. Boca Raton, FL: CRC Press. pp. 83–84.

Examples

composite_r_scalar(mean_rxy = .3, k_vars_x = 4, mean_intercor_x = .4)
R <- reshape_vec2mat(.4, order = 5)
R[-1,1] <- R[1,-1] <- .3
composite_r_matrix(r_mat = R, x_col = 2:5, y_col = 1)

psychmeta documentation built on Aug. 26, 2022, 5:14 p.m.