稳健线性模型

支持范数中列出的M估计量的稳健线性模型。

查看模块参考以获取命令和参数。

示例

# 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)
const       -41.026498
AIRFLOW       0.829384
WATERTEMP     0.926066
ACIDCONC     -0.127847
dtype: float64

详细的示例可以在这里找到:

技术文档

参考文献

  • PJ Huber. 《稳健统计》约翰威立父子出版公司,纽约。1981年。

  • PJ Huber. 1973, ‘1972年Wald纪念讲座:稳健回归:渐近性、猜想和蒙特卡洛模拟。’ 《统计学年鉴》, 1.5, 799-821.

  • R Venables, B Ripley. 《现代应用统计学在S中》 Springer, 纽约,

  • C Croux, PJ Rousseeuw, ‘时间高效算法用于两个高度稳健的尺度估计器’ 计算统计学. Physica, 海德堡, 1992.

模块参考

模型类

RLM(endog, exog[, M, missing])

稳健线性模型

模型结果

RLMResults(model, params, ...)

包含RLM结果的类

范数

AndrewWave([a])

Andrew 的 M 估计波形。

Hampel([a, b, c])

用于M估计的Hampel函数。

HuberT([t])

Huber's T 用于 M 估计。

LeastSquares()

M估计的最小二乘rho及其派生函数。

MQuantileNorm(q, base_norm)

基于基准范数的M-分位数目标函数

RamsayE([a])

Ramsay 的 Ea 用于 M 估计。

RobustNorm()

用于稳健回归的范数的父类。

TrimmedMean([c])

用于M估计的修剪均值函数。

TukeyBiweight([c])

用于M估计的Tukey双权重函数。

estimate_location(a, scale[, norm, axis, ...])

使用self.norm和当前的尺度估计值进行位置的M估计。

规模

Huber([c, tol, maxiter, norm])

Huber 的第 2 号提案,用于联合估计位置和尺度。

HuberScale([d, tol, maxiter])

用于拟合稳健线性模型的Huber尺度缩放。

mad(a[, c, axis, center])

沿给定轴的数组的中位数绝对偏差

hubers_scale

用于拟合稳健线性模型的Huber尺度缩放。

iqr(a[, c, axis])

沿数组给定轴的标准化四分位距

qn_scale(a[, c, axis])

计算Qn稳健尺度估计量


Last update: Oct 16, 2024