Different R squared from fitlm and corrcoeff?

Hello,
I've noticed that I get different R-squared values from the fitlm() and corrcoeff() functions. Here's a simple example:
x = [1,2,3,4,5,6,7];
y = [3,6,4,8,10,10,13];
scatter(x,y)
fitlm(x,y)
corrcoef(x,y)
fitlm() says the ordinary R-squared value is 0.893. corrcoef(x,y) says the R-squared value is 0.945. Why is there a discrepancy between these two functions?
Thanks in advance, Diana

 Risposta accettata

Peter Perkins
Peter Perkins il 21 Gen 2016
Diana, you're comparing two different things, though they are related. See, e.g. this wikipedia entry.

Più risposte (1)

If I'm not wrong, corrcoef() provides the Pearson coefficient R.
In this case, R = 0.945, and R^2 = 0.945^2 = 0.893, that is what is provided by fitlm().

Community Treasure Hunt

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

Start Hunting!

Translated by