Robust linear models with support for the M-estimators listed under Norms.
See Module Reference for commands and arguments.
# Load modules and data
In [1]: import statsmodels.api as sm
In [2]: data = sm.datasets.stackloss.load()
In [3]: data.exog = sm.add_constant(data.exog)
# Fit model and print summary
In [4]: rlm_model = sm.RLM(data.endog, data.exog, M=sm.robust.norms.HuberT())
In [5]: rlm_results = rlm_model.fit()
In [6]: print(rlm_results.params)
[-41.0265 0.8294 0.9261 -0.1278]
Detailed examples can be found here:
RLMResults(model, params, ...) | Class to contain RLM results |
AndrewWave([a]) | Andrew’s wave for M estimation. |
Hampel([a, b, c]) | Hampel function for M-estimation. |
HuberT([t]) | Huber’s T for M estimation. |
LeastSquares | Least squares rho for M-estimation and its derived functions. |
RamsayE([a]) | Ramsay’s Ea for M estimation. |
RobustNorm | The parent class for the norms used for robust regression. |
TrimmedMean([c]) | Trimmed mean function for M-estimation. |
TukeyBiweight([c]) | Tukey’s biweight function for M-estimation. |
estimate_location(a, scale[, norm, axis, ...]) | M-estimator of location using self.norm and a current estimator of scale. |
Huber([c, tol, maxiter, norm]) | Huber’s proposal 2 for estimating location and scale jointly. |
HuberScale([d, tol, maxiter]) | Huber’s scaling for fitting robust linear models. |
mad(a[, c, axis, center]) | The Median Absolute Deviation along given axis of an array |
hubers_scale | Huber’s scaling for fitting robust linear models. |
stand_mad(a[, c, axis]) |