Correlation Matrix to Covariance Matrix Conversion
Correlation Matrix to Covariance Matrix Conversion
Function to convert a correlation matrix to a covariance matrix.
cor2cov(cor.mat, sd, discrepancy =1e-05)
Arguments
cor.mat: The correlation matrix to be converted.
sd: A vector that contains the standard deviations of the variables in the correlation matrix.
discrepancy: A neighborhood of 1, such that numbers on the main diagonal of the correlation matrix will be considered as equal to 1 if they fall in this neighborhood
Details
This function was copied from package MBESS.
The correlation matrix to convert can be either symmetric or triangular. The covariance matrix returned is always a symmetric matrix.
Note
The correlation matrix input should be a square matrix, and the length of sd should be equal to the number of variables in the correlation matrix (i.e., the number of rows/columns). Sometimes the correlation matrix input may not have exactly 1s on the main diagonal, due to, eg, rounding; discrepancy specifies the allowable discrepancy so that the function still considers the input as a correlation matrix and can proceed (but the function does not change the numbers on the main diagonal).
Author(s)
Ken Kelley (University of Notre Dame; KKelley@ND.Edu), Keke Lai