Export residuals from curve fitting

44 Ansichten (letzte 30 Tage)
Mohammed Hammad
Mohammed Hammad am 7 Jul. 2019
Kommentiert: Mohammed Hammad am 7 Jul. 2019
Hi,
I am using the curve fitting toolbox on MATLAB_R2019a to create a (linear least square fit) by creating a (Polynomial fit with 1 degree).
I would like to export the residuals values to an array. I know I can acheive that manually from Fit >> Save to work space >> output.
But I have a loop around 1000 file so I would like to export residuals individually for each fit.
Any help is apprciated.

Akzeptierte Antwort

Matt J
Matt J am 7 Jul. 2019
Bearbeitet: Matt J am 7 Jul. 2019
Instead of using cftool, use the fit() command,
[fitobject,gof,output] = fit(x,y,'poly1','Weights', w);
residuals=output.residuals;
  1 Kommentar
Mohammed Hammad
Mohammed Hammad am 7 Jul. 2019
Thanks a lot, I achieved what I want by editing my curvefit code after generating it from the toolbox as you mentioned
[fitobject,gof,output] = fit( xData, yData, ft, opts );
then I got the residuals from:
residuals=output.residuals;

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Matt J
Matt J am 7 Jul. 2019
Bearbeitet: Matt J am 7 Jul. 2019
For a simple 1 degree polynomial, why not just use polyfit?
p=polyfit(x,y,1);
residuals=polyval(p,x)-y;
  4 Kommentare
Mohammed Hammad
Mohammed Hammad am 7 Jul. 2019
cool, but I have weights, how can I insert them in the polyfit function. I used to do that using the curve fitting toolbox but here, I don't know how to do it
Matt J
Matt J am 7 Jul. 2019
Bearbeitet: Matt J am 7 Jul. 2019
Unfortunately, you cannot do weighted fitting with polyfit, so I would recommend fit() as I mentioned in my other answer.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Get Started with Curve Fitting Toolbox finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by