MATLAB Answers

0

How to get correlation for multiple columns

Asked by Csongor Báthory on 10 Nov 2018 at 19:57
Latest activity Answered by Csongor Báthory on 13 Nov 2018 at 7:55
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

  0 Comments

Sign in to comment.

2 Answers

Answer by jonas
on 11 Nov 2018 at 1:33
Edited by jonas
on 11 Nov 2018 at 1:36
 Accepted Answer

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)

  0 Comments

Sign in to comment.


Answer by Csongor Báthory on 13 Nov 2018 at 7:55

Thank you!
More easier that I thinked. Get to know the basics :)

  0 Comments

Sign in to comment.