Zero correlation coefficient, example
Ältere Kommentare anzeigen
This question of mine is not tightly related to Matlab, but is relevant to it:
I'm looking how to fill in this matrix in a few nontrivial ways
[[a,b,c],[d,e,f]] so that as many places in the ans of this matrix
corrcoef([a,b,c],[d,e,f])
are zero. My attempts yield NaN result in most cases.
4 Kommentare
Jan
am 13 Jun. 2021
That line throws an error. There are two ways to correct it but you need to let us know which method fits your needs. See the corrcoef documentation to learn the difference between the two syntaxes.
Original line
corrcoef([1,2,3];[-1,2,1])
Corrected version 1
corrcoef([1,2,3],[-1,2,1])
ans =
1.0000 0.6547
0.6547 1.0000
Corrected version 2
corrcoef([1,2,3 ; -1,2,1])
ans =
1.0000 NaN 1.0000
NaN NaN NaN
1.0000 NaN 1.0000
x = [1,2,3 ; -1,2,1]
corrcoef computes the correlation coeficient for each pair of columns. Let's look at column 1 and 2
x(:,1), x(:,2)
corr(x(:,1),x(:,2))
Notice that x(:,2) contains the same values. Now look at the link in my answer and pay attantion to the part that says, "When each value of y is identical, the result is a vector of 0s. When you divide by zero, you get NaN. ".
Antworten (1)
Make sure your inputs avoid those errors. If you have trouble understanding the reasons explained in that answer or if you have trouble creating inputs that avoid NaNs after considering those reasons, share your inputs and we can help guide you in the right direction.
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!