Add a New Comment (Rich Markup)
The corrcoef function in the nan package uses a numerically unstable method to calculate the correlation coefficients, which can even result in the returned correlation coefficients being outside the range -1 to 1. Examples: A) i = 1E7; c = corrcoef(1E5 + (1:i)'/i, 1E5 + sin((1:i)'/i) .* cos((1:i)'/i)) returns 1.0518 B) i = 1E6; c = corrcoef(1E7+(1:i)'/i, 1E7 + sin((1:i)'/i)) returns -1.2129 C) i = 1E6; c = corrcoef(1E7+(1:i)'/i, 1E7 - sin((1:i)'/i)) returns 0.00000 - 0.43355i By contrast, for the above cases the built-in corrcoef function returns reasonable results of 0.92305, 0.99743, -0.99743 respectively
(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)
Attach Files: Comment:
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Only project members can vote.
Please enter the title of George Orwell's famous dystopian book (it's a date):
Follow 3 latest changes.
Copyright © 2023 Free Software Foundation, Inc. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. The Levitating, Meditating, Flute-playing Gnu logo is a GNU GPL'ed image provided by the Nevrax Design Team. Source Code
Powered by Savane 3.12