PARTIAL_COR: Partial and semipartial correlations

View source: R/PARTIAL_COR.R

PARTIAL_CORR Documentation

Partial and semipartial correlations

Description

Produces partial correlations between two or more variables (in set Y) while statistically controlling for one or more covariates (set C). It also produces partial correlations, semipartial correlations, and standardized regression coefficients for predicting variables (in set Y) from one or more set X variables.

Usage

PARTIAL_COR(data, Y, X=NULL, C=NULL, Ncases=NULL, verbose=TRUE)

Arguments

data

Either a dataframe of raw data (where the rows are cases and the columns are the variables), or a square correlation matrix with row and column names.

Y

The names of one or more continuous variables in data.
Example: Y = c('var1', 'var2', 'var3')

C

The names of one or more continuous variables in data to be partialled out of the Y variable correlations.
Example: C = c('var4', 'var5')

X

The names of one or more continuous predictor variables in data.
Example: X = c('var6', 'var7', 'var8')

Ncases

The number of cases. Required only when the input (data) is a correlation matrix.

verbose

Should detailed results be displayed in console?
The options are: TRUE (default) or FALSE.

Details

Y must be provided along with either one, or both, of C and X.

If Y and C are provided, but not X, then the function computes:

  • the correlations between the Y variables after partialling the C variables out of the Y variables.

If Y and X are provided, but not C, then the function computes:

  • the standardized betas for the X variables predicting the Y variables;

  • the partial correlations for the X variables predicting the Y variables. In other words, for any given X variable, the other X variables are partialled out of both the given X variable and the Y variables. And,

  • the semi-partial correlations for the X variables predicting the Y variables. In other words, for any given X variable, the other X variables are partialled out of the given X variable and the Y variables remain as they are, untouched.

If Y, X, and C are provided, then the function computes:

  • the correlations between the Y variables after partialling the C variables out of the Y variables;

  • the betas for the X variables predicting the C-partialled Y variables;

  • the partial correlations for the X variables predicting the C-partialled Y variables. In other words, for any given X variable, the other X variables are partialled out of both the given X variable and the C-partialled Y variables. And,

  • the semi-partial correlations for the X variables predicting the C-partialled Y variables. In other words, for any given X variable, the other X variables are partialled out of the given X variable but not out of the C-partialled Y variables.

Value

A list containing the correlations, standardized regression coefficients (betas), partial correlations, semi-partial correlations, t-test values, and p values.

Author(s)

Brian P. O'Connor

References

Cohen, J., Cohen, P., West, S. G., & Aiken, L. S. (2003). Applied multiple regression/correlation analysis for the behavioral sciences (3rd ed.). Lawrence Erlbaum Associates.

Examples

# C, but no X variables
PARTIAL_COR(data = data_DeLeo_2013, 
            Y = c('Problematic_Internet_Use','Tobacco_Use','Alcohol_Use','Illicit_Drug_Use'), 
            C = c('Age','Parents_Income'), 
            X = NULL)

# X, but no C variables
PARTIAL_COR(data = data_DeLeo_2013, 
            Y = c('Problematic_Internet_Use','Tobacco_Use','Alcohol_Use','Illicit_Drug_Use'), 
            C = NULL, 
            X = c('Impulsivity','Social_Interaction_Anxiety',
                  'Social_Support','Intolerance_of_Deviance','Family_Morals',
                  'Grade_Point_Average','Depression','Family_Conflict'))

# both X & C variables
PARTIAL_COR(data = data_DeLeo_2013, 
            Y = c('Problematic_Internet_Use','Tobacco_Use','Alcohol_Use','Illicit_Drug_Use'), 
            C = c('Age','Parents_Income'), 
            X = c('Impulsivity','Social_Interaction_Anxiety',
                  'Social_Support','Intolerance_of_Deviance','Family_Morals',
                  'Grade_Point_Average','Depression','Family_Conflict'))

SIMPLE.REGRESSION documentation built on Nov. 19, 2025, 5:08 p.m.