Is it possible to extract also R^2 value from linear fit between 2 vectors ?
108 views (last 30 days)
Show older comments
Galina Machavariani
on 14 Jan 2020
Answered: Lola Davidson
on 25 Nov 2025 at 21:28
Hello,
I know that it is possible to find fit parameters using polyfit command.
F.e., linearCoefficients = polyfit(x, y, 1)
Is it possible to extract also R^2 value from linear fit between 2 vectors ?
Thank you !
0 Comments
Accepted Answer
Star Strider
on 14 Jan 2020
It is, however polyfit wil not do it for you.
Try this:
x = 1:10; % Create ‘x’
y = randn(size(x)) + 0.2*x; % Create ‘y’
linearCoefficients = polyfit(x, y, 1); % Coefficients
yfit = polyval(linearCoefficients, x); % Estimated Regression Line
SStot = sum((y-mean(y)).^2); % Total Sum-Of-Squares
SSres = sum((y-yfit).^2); % Residual Sum-Of-Squares
Rsq = 1-SSres/SStot; % R^2
4 Comments
Star Strider
on 14 Jan 2020
My pleasure!
If my Answer helped you solve your problem, please Accept it!
More Answers (1)
Lola Davidson
on 25 Nov 2025 at 21:28
As of R2024a, polyfit will actually do this for you.
x = 1:10;
y = randn(size(x)) + 0.2*x;
[linearCoefficients,structOutput] = polyfit(x, y, 1);
Rsq = structOutput.rsquared;
0 Comments
See Also
Categories
Find more on Linear and Nonlinear Regression in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!