How to partition a matrix into components that are independent?

I'm going to partition a symmetric matrix (covariance matrix) into columns/rows that are independent. Any help is appreciated.

2 comentarios

Do you mean that you want to extract certain values (rows/columns) and define them as new variables?
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.

Iniciar sesión para comentar.

Respuestas (2)

Is this what you want to do?
X = rand(4,4);
Xr = X(2,:) % Extract second row
Xc = X(:,3) % Extract third column

2 comentarios

No. I have a cov matrix (40x40) that includes several linearly dependent variables, so I'm trying to find those variables.
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.

Iniciar sesión para comentar.

help corr
Will calculate linear correlation between columns of a matrix.

Categorías

Más información sobre Sparse Matrices en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

MJ
el 26 de Mayo de 2014

Comentada:

el 26 de Mayo de 2014

Community Treasure Hunt

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

Start Hunting!

Translated by