Theil-Sen 稳健趋势斜率
Theil-Sen Estimator
想知道十年气温/水位是在升还是降,普通最小二乘斜率会被几个极端年带偏。Theil-Sen 用"中位数斜率"说话,对异常值几乎免疫。
本文涉及的条目13 条 · 自动匹配自标签与标题
它解决什么问题
线性回归的斜率对离群点极敏感:一个极端干旱年或一次传感器故障造成的尖峰,就能把长期趋势拉歪。环境监测序列常含这类异常,普通趋势线不可信。
思路
Theil-Sen 计算所有样本点对斜率的中位数作为趋势估计,而不是最小化平方误差。因为中位数天然抗异常,所以少数极端点不会影响结论。
步骤
- 对序列中所有点对 (i, j) 计算斜率 (yⱼ − yᵢ)/(xⱼ − xᵢ);
- 取这些斜率的中位数作为趋势斜率;
- 常用 Mann-Kendall 检验配合,判断趋势是否显著(不只是有多大)。
适用与注意
- 适合长期趋势识别:气温、水位、污染物浓度的年际变化;
- 对缺失与异常鲁棒,比 OLS 更适合"脏"的实测序列;
- 仍要先去季节与去趋势项,否则季节波动会被误读为趋势;
- 斜率显著 ≠ 变化有意义,要结合量级与领域判断。
看长期趋势,先用 Theil-Sen + Mann-Kendall,别让一两个异常年决定你要讲的故事。