How can I combine two correlation matrices (corrplot)?

10 views (last 30 days)
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
Caspar Gevaerts
Caspar Gevaerts on 7 Feb 2023
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)

Swaraj
Swaraj on 10 Feb 2023
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));

Community Treasure Hunt

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

Start Hunting!