Borrar filtros
Borrar filtros

How do I compute the mean correlation from a n by n correlation matrix?

13 visualizaciones (últimos 30 días)
liane
liane el 22 de Mzo. de 2017
Respondida: Jyotish Robin el 30 de Mzo. de 2017
I have a 34 x 34 correlation matrix and would like to compute the mean correlation (i.e., average of correlations above or below the diagonal). I was wondering if anyone could show me how to do that.

Respuestas (1)

Jyotish Robin
Jyotish Robin el 30 de Mzo. de 2017
Hi Liane!
You could accomplish the task by making use of the functions 'tril' and 'mean'.
If a is your matrix, the following command returns the upper triangular elements (not including the diagonal elements) as a column vector:
colvect= a(find(~tril(ones(size(a)))))
Now if you do
mean(colvect)
It will give you the average of upper triangular entries of the matrix a.
In a similar way, you could deal with the lower triangular entries also. You could learn more about 'tril' and 'mean' functions from the following documentations:
Hope this helps!
Regards,
Jyotish

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by