# Renaming Fit rsquare value

1 view (last 30 days)
Petch Anuwutthinawin on 26 Jun 2021
Commented: Scott MacKenzie on 26 Jun 2021
I have made a fit for a set of data. It returns an rsquare value, which I have to rename to R1.
%This is the code for the fit
ft1=fittype('m*x+b');
[Fit1,gof]=fit(A',T',ft1)
%Below is the output for gof. I need to rename rsquare to R1.
gof =
struct with fields:
sse: 2.1928e+03
rsquare: 0.0121
dfe: 8
rmse: 16.5561

Scott MacKenzie on 26 Jun 2021
ft1=fittype('m*x+b');
[Fit1,gof]=fit(A',T',ft1)
R1 = gof.rsquare
Scott MacKenzie on 26 Jun 2021
I notice that you are not renaming the gof variable returned in each call to fit. So, after the second call, you no longer have gof from the first call. That's fine, but if you want to have all three R-squared values after the three calls to fit, you need to save them in some way. Here's one approach:
ft1=fittype('m*x+b');
[Fit1,gof]=fit(A',T',ft1)
R1 = gof.rsquare; % save 1st R-squared value
%% Second order poly
ft2=fittype('a*x.^2+b*x+c');
[Fit2,gof]=fit(A',T',ft2)
R2 = gof.square; % save 2nd R-squared value
%% Third order poly
ft3=fittype('a*x.^3+b*x.^2+c*x+d');
[Fit3,gof]=fit(A',T',ft3)
R3 = gof.rsquare; % save 3rd R-squared value