Learn R Programming

psychmeta (version 2.6.4)

composite_r_matrix: 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))
)

Value

A composite correlation

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:

_XYw_X^TR_XYw_Y(w_X^TR_XXw_X)(w_Y^TR_YYw_Y)r_composite = (t(wt_x) Rxy wt_y) / (sqrt(t(wt_x) Rxx wt_x) * sqrt(t(wt_y) Ryy wt_y))

where _XYr_composite is the composite correlation, wwt is a vector of weights, and RR is a correlation matrix. The subscripts of wwt and RR indicate the variables indexed within the vector or matrix.

References

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

Examples

Run this code
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)

Run the code above in your browser using DataLab