How can I combine two correlation matrices (corrplot)?

Is there a way to combine upper correlation matrix with lower correlation matrix of two different sets of data? I´ve been trying to figure it out and at this moment can only do it manually, which is not efficient....

1 Comment

You can add the upper and lower triangular matrices.
X = rand(5,10);
Y = rand(5,10);
CorrCombined = triu(corr(X),1) + tril(corr(Y))

Sign in to comment.

Answers (1)

The corr function is used to calculate the correlation matrix of each dataset, and the triu and tril functions are used to extract the upper and lower triangular matrices, respectively.
Here's an example to clarify this:
X = rand(1,10);
Y = rand(1,10);
R1 = corr(X);
R2 = corr(Y);
% Combine the matrices
CorrCombined = triu(R1,1) + tril(R2);
% Add the diagonal elements of the original correlation matrices
CorrCombined = CorrCombined + diag(diag(R1)) + diag(diag(R2));

Asked:

on 19 Jan 2018

Answered:

on 10 Feb 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!