How to partition a matrix into components that are independent?

7 vues (au cours des 30 derniers jours)
MJ
MJ le 26 Mai 2014
Commenté : Star Strider le 26 Mai 2014
I'm going to partition a symmetric matrix (covariance matrix) into columns/rows that are independent. Any help is appreciated.
  2 commentaires
Mahdi
Mahdi le 26 Mai 2014
Do you mean that you want to extract certain values (rows/columns) and define them as new variables?
MJ
MJ le 26 Mai 2014
No. I have a symmetric matrix, a covariance matrix (40x40), which includes linearly dependent variables. I'm going to find variables that are linearly correlated, or those that are independent.

Connectez-vous pour commenter.

Réponses (2)

Star Strider
Star Strider le 26 Mai 2014
Is this what you want to do?
X = rand(4,4);
Xr = X(2,:) % Extract second row
Xc = X(:,3) % Extract third column
  2 commentaires
MJ
MJ le 26 Mai 2014
No. I have a cov matrix (40x40) that includes several linearly dependent variables, so I'm trying to find those variables.
Star Strider
Star Strider le 26 Mai 2014
The easiest way is probably to use the core MATLAB function corrcoef. The way I would suggest using it is to use the P (probability) values:
[R,P] = corrcoef(X)
[pr,pc] = find(P < 0.05)
and search for the lowest ones, or those that exceeded your limits, for instance P < 0.05 or lower. The find function will give you the row and column indices for those values. There may be other criteria, but this has the advantage of having statistical validity.

Connectez-vous pour commenter.


Kelly Kearney
Kelly Kearney le 26 Mai 2014
help corr
Will calculate linear correlation between columns of a matrix.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by