How to get correlation for multiple columns

15 Ansichten (letzte 30 Tage)
Csongor Báthory
Csongor Báthory am 10 Nov. 2018
Beantwortet: Csongor Báthory am 13 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

Akzeptierte Antwort

jonas
jonas am 11 Nov. 2018
Bearbeitet: jonas am 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)

Weitere Antworten (1)

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

Community Treasure Hunt

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

Start Hunting!

Translated by