How can I implement a linear fit based on Theil–Sen estimator in MATLAB 7.13 (R2011b)?
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
MathWorks Support Team
am 8 Sep. 2011
Bearbeitet: MathWorks Support Team
am 26 Okt. 2021
I want to implement a linear fit based on the Theil-Sen estimator as it is insensitive to outliers.
More information can be found at:
Akzeptierte Antwort
MathWorks Support Team
am 22 Okt. 2021
Bearbeitet: MathWorks Support Team
am 26 Okt. 2021
MATLAB does not have any inbuilt function to implement a linear fit based on ‘Theil–Sen’ estimator. However, if the main issue is to reduce the effect of the outliers when doing a line fit, there are several workarounds. You can achieve that in MATLAB or using various toolboxes such as Curve Fitting Toolbox, Statistics Toolbox and Optimization Toolbox.
1) Statistics Toolbox
Please refer the following documentation for ROBUSTFIT to do robust regression:
2) Curve Fitting Toolbox
There is an interactive environment, with Curve Fitting Tool accessible by typing “cftool” which allows you to exclude outliers in two different ways:
a) Algorithmically leave outliers out
You can do this via the following steps:
1) Type cftool on MATLAB command window
2) Select the “Fitting’ option, which will open the “Fit Editor”
3) Select the “New Fit” option in the “Fit Editor”
4) Select the “Fit options” in the “Fit Editor”
5) Set the “Roboust” to “On” from drop down menu
Please refer to the following link for more information about excluding outliers algorithmically:
b) Use the mouse to identify outliers using “Exclusion Rule” menu:
Please refer to the following link for more information about removing outliers using mouse:
3) MATLAB or Optimization Toolbox
Write an objective function that uses the sum of absolute-value of errors (rather than sum of squared errors). This can be done in conjunction with the solver FMINSEARCH in MATLAB, or with a solver such as FMINUNC in Optimization Toolbox.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Linear and Nonlinear Regression 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!