How to calculate R-square using robust linear regression function

2 次查看(过去 30 天)
In the linear regression function (regress), one may get the R^2 value directly from one of the 'stats' variable in [b, bint, r, rint, stats] = regress(y,X) function
I want to do a robust linear regression with [b,stats] = robustfit(X,Y)
However, I can't find in the help panel how to assess R^2 from the output variables of the 'robustfit' function.
Any help will be very welcome
JA

回答(2 个)

Matt Fig
Matt Fig 2012-11-29
[brob, rob_stats] = robustfit(x,y);
rsquare = corr(y,brob(1)+brob(2)*x)^2

Christian
Christian 2015-5-19
Hi there, although this thread is really old, I'm gonna give it a shot :-) I encountered the same problem and Matt's formula seems to solve it beautifully when regressing against only 1 independent variable. However, my x contains 4 factors. How would you go about calculating R-squared in that case? I tried the following, but it doesn't seem to work:
B_Rsqrd(1,j) = corr(Y,b(1)+b(2)*X(:,1)+b(3)*X(:,2)+b(4)*X(:,3)+b(5)*X(:,4))^2;
Can someone help me out here?
Any help is much appreciated!
Christian

类别

Help CenterFile Exchange 中查找有关 Linear and Nonlinear Regression 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by