您还没有绑定微信,更多功能请点击绑定

数据里混进了“异常值”?一文讲清 4 种离群值检验方法(附在线工具)

数据里混进了“异常值”?一文讲清 4 种离群值检验方法(附在线工具)

在质量分析、实验室比对或过程监控中,你是否有过这样的纠结:那个偏离平均值的点,到底是真实波动,还是测量错误?如果贸然剔除,可能丢掉关键信号;如果保留,又可能扭曲统计结论。离群值检验(Outlier Test)正是用来回答“这个点是否统计上显著异常”的标准化工具。本文基于 ISO 5725-2 及 Grubbs、Dixon、Iglewicz-Hoaglin MAD 等公开检验方法,为你拆解原理与操作步骤,并在文末提供可直接使用的在线工具。


一、离群值检验是什么?

离群值(Outlier)是指在一组数据中,与其他观测值相比显得“格格不入”的数值。它可能源于记录错误、仪器故障、样品污染,也可能反映真实的特殊原因(如材料缺陷、工艺突变)。

离群值检验的核心逻辑是:先假设数据来自同一正态总体(或近似正态),再计算某个统计量,看该极端点出现的概率是否低于预设阈值(如 5%)。若低于阈值,则判定为“统计显著异常”,此时可结合技术原因决定是否剔除。

需要强调的是,统计检验只能提供“是否异常”的证据,不能替代工程判断。ISO 5725-2 也明确要求:剔除离群值前应调查其技术原因。


二、怎么做?四种主流方法的适用场景与公式

1. Grubbs 检验(适用于单变量、近似正态、样本量 3~30)

Grubbs 检验(也称 ESD 方法)是最经典的离群值检验,用于检测单个离群值(可迭代检测多个)。其统计量为:


G = (max|x_i - x̄|)/(s)


其中 x̄ 为均值, s 为标准差(样本标准差,分母 n-1)。临界值由 t 分布导出:


G_(crit) = (n-1)/(√(n)) √((t^2_(α/(2n), n-2))/(n-2 + t^2_(α/(2n), n-2)))


若 G > G_(crit),则判定该点为离群值。ISO 5725-2 推荐使用此方法进行实验室间一致性检验(显著性水平通常取 0.05)。

2. Dixon Q 检验(适用于小样本,3~7 个数据)

Dixon 检验不依赖均值与标准差,而是基于极差比,适合样本量较小的场景(如重复测量 3~7 次)。其统计量根据样本量选择不同公式,最常用的是:


Q = (x_(n) - x_(n-1))/(x_(n) - x_(1)) (检测最大值)


其中 x_(1) le x_(2) le … le x_(n) 为排序后的数据。查 Dixon 临界值表(公开统计表),若 Q > Q_(crit) 则判定异常。

3. Iglewicz-Hoaglin MAD 法(稳健方法,适用于含多个离群值或非正态)

该方法基于中位数(Median)与绝对中位差(MAD),对离群值不敏感,适合数据本身可能被污染的情况。

先计算中位数 ~x,再计算:


MAD = median(|x_i - ~x|)


然后对每个点计算稳健 Z 分数:


Z_i = (0.6745 × (x_i - ~x))/(MAD)


其中 0.6745 是使 MAD 在正态分布下等价于标准差的修正系数。若 |Z_i| > 3.5 (Iglewicz 与 Hoaglin 建议的阈值),则判定该点为离群值。此方法无需查表,计算便捷,适合自动化处理。

4. 3σ 准则(简单快速,适用于大样本近似正态)

若数据量较大(n>30)且近似正态,可计算均值 x̄ 与标准差 s,凡落在 [x̄ - 3s, x̄ + 3s] 区间之外的点视为离群值。此方法基于正态分布性质:约 99.7% 的数据落在 ±3σ 内。但注意:当样本量小或存在多个离群值时,均值与标准差本身会被污染,3σ 法可能失效


三、一个演示算例(示例数据,仅供演示)

假设某实验室对同一标准样品进行 6 次重复测量,结果如下(单位:mg/L):

示例数据(仅供演示)
4.82, 4.91, 4.88, 5.02, 4.79, 5.61

直观可见 5.61 明显偏大。我们用三种方法检验:

Grubbs 检验(n=6,α=0.05)
  • 均值 x̄ = (4.82+4.91+4.88+5.02+4.79+5.61)/6 = 5.005
  • 标准差 s = √((Σ(x_i-x̄)^2)/(n-1)) = 0.304 (示例计算)
  • 最大偏差来自 5.61: G = |5.61-5.005| / 0.304 = 1.99
  • 查 Grubbs 临界值表(n=6,α=0.05): G_(crit) = 1.887 (公开统计表值)
  • 因为 1.99 > 1.887,判定 5.61 为离群值。


Dixon Q 检验(n=6)

排序:4.79, 4.82, 4.88, 4.91, 5.02, 5.61
检测最大值:

Q = (5.61 - 5.02)/(5.61 - 4.79) = (0.59)/(0.82) = 0.72

查 Dixon 临界值表(n=6,α=0.05): Q_(crit) = 0.628 (公开统计表值)。
因为 0.72 > 0.628,同样判定 5.61 为离群值。

MAD 法

中位数 ~x = (4.88+4.91)/2 = 4.895
各点绝对偏差:|4.79-4.895|=0.105, |4.82-4.895|=0.075, |4.88-4.895|=0.015, |4.91-4.895|=0.015, |5.02-4.895|=0.125, |5.61-4.895|=0.715
排序后中位 MAD = 0.105(示例)
对 5.61: Z = 0.6745 × (5.61-4.895)/0.105 = 4.59
因为 |Z| > 3.5,判定为离群值。

三种方法结论一致:5.61 为统计显著离群值。实际处理时,应检查该次测量是否存在仪器波动或操作失误;若无技术原因,可考虑剔除后重新计算均值与标准差。


四、常见误区(建议收藏)

1. “检验显著”不等于“必须剔除”:统计显著仅说明该点与总体差异过大,是否剔除需结合技术调查。ISO 5725-2 要求记录剔除理由。
2. 小样本慎用 3σ 法:当 n<10 时,单个离群值会显著拉大标准差,导致 3σ 区间过宽,可能漏检。
3. 多次检验需校正显著性水平:若对同一数据集反复执行 Grubbs 检验(每次剔除一个点),实际显著性水平会升高。建议使用 ESD 方法(可一次检测多个离群值)或降低 α。
4. 数据非正态时慎用 Grubbs:Grubbs 对正态性敏感,若数据明显偏态,优先使用 MAD 法或 Dixon 法。
5. 不要忽略“真实异常”:有时离群值恰恰代表过程异常(如设备磨损、材料批次差异),剔除前务必追溯原因。


五、在线工具,一键完成检验

手动查表计算容易出错,尤其当数据量较大时。这里推荐一个在线工具,集成 Grubbs、Dixon、MAD 等多种方法,输入数据即可得到判定结果与临界值参考:

? 离群值检验在线工具


下图是 6SQ 在线工具一键生成的结果效果:





该工具无需安装,支持粘贴数据批量处理,适合质量工程师、实验室人员与数据分析初学者。如果你正在处理一组可疑数据,不妨先跑一遍检验,再结合工程判断做决策——这才是科学的离群值处理流程。

0 个评论

游客无法查看评论和回复, 请先登录注册

发起人

龙天
龙天

我努力,我进步,我付出,我收获,我坚持,我成功!

推荐文章

文章状态

  • 发布时间: 2026-09-09 22:59
  • 浏览: 9
  • 评论: 0
  • 赞: 0