How to get correlation for multiple columns

36 vues (au cours des 30 derniers jours)
Csongor Báthory
Csongor Báthory le 10 Nov 2018
As Matlab newbie I'm trying to get correlation of the first column itself and all the others, but can't handle.
Error: You cannot subscript a table using linear indexing (one subscript) or multidimensional indexing (three or more subscripts). Use a row subscript and a variable subscript.
My code:
X = table(Tmin.P1,Tmin.P2,Tmin.H1,Tmin.H2,Tmin.Z1,Tmin.Z2,Tmin.S1)
for i=1, k=0
i=i+1;
k=k+1;
B(k,:)=corr(X(:,1),X(:,i));
end

Réponse acceptée

jonas
jonas le 11 Nov 2018
Modifié(e) : jonas le 11 Nov 2018
Why not just calculate the entire correlation matrix, and then extract the first row or col?
cm = corr(X)
c1n = cm(:,1)
If X is a table, then you need to write something like
cm = corr(X{:,:})
or
cm = corr(X.Variables)

Plus de réponses (1)

Csongor Báthory
Csongor Báthory le 13 Nov 2018
Thank you!
More easier that I thinked. Get to know the basics :)

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by