GUIDE 02

四分位数·IQR·异常值:为什么不同算法结果不同

用示例说明 Excel QUARTILE.INC 与 QUARTILE.EXC、Tukey 铰链得出不同四分位数的原因,以及 IQR、1.5×IQR 异常值标准和箱线图的读法。

四分位数是把排好序的数据分成四等份的分界值。第一四分位数 Q1 是下方 25% 的位置,第二四分位数 Q2 是中位数,第三四分位数 Q3 是下方 75% 的位置。概念很简单,但用 Excel、R 和统计教科书计算同一组数据时,Q1Q3 常常各不相同。这并不是计算器出错,而是关于如何确定数据之间的位置存在多种约定。

为什么会有多种算法

如果有 10 个数据,“下方 25% 的位置”并不恰好落在某一个值上。可以说是第 2.5 个值附近,也可以说是第 3.25 个。统计软件 R 把这些定义整理成 9 种(type 1~9),常用的是以下三种。

算法位置公式(排序后第 k 个)典型使用场合
R type 7k = (n−1)p + 1Excel QUARTILE.INC·PERCENTILE.INC、R 默认值、NumPy 默认值
R type 6k = (n+1)pExcel QUARTILE.EXC·PERCENTILE.EXC、部分教科书·Minitab
Tukey 铰链先用中位数把数据分成两半,再取各半的中位数探索性数据分析、箱线图教科书、R fivenum()

如果位置 k 不是整数,就在前后两个值之间做线性插值。例如 k = 3.25 时,在第 3 个值上加上(第 4 个值 − 第 3 个值)的 0.25 倍。Tukey 铰链的原始定义是:n 为奇数时,中位数同时计入两半。

同一组数据,不同的四分位数

下面是排好序的 10 个值。

2, 4, 5, 7, 8, 10, 12, 13, 15, 25

中位数是第 5 个和第 6 个值的平均 (8+10)/2 = 9,三种算法都相同。差别出现在 Q1 和 Q3。

type 7(Excel QUARTILE.INC)

  • Q1 位置:(10−1)×0.25 + 1 = 3.255 + 0.25×(7−5) = 5.5
  • Q3 位置:(10−1)×0.75 + 1 = 7.7512 + 0.75×(13−12) = 12.75

type 6(Excel QUARTILE.EXC)

  • Q1 位置:(10+1)×0.25 = 2.754 + 0.75×(5−4) = 4.75
  • Q3 位置:(10+1)×0.75 = 8.2513 + 0.25×(15−13) = 13.5

Tukey 铰链

  • 下半部分 2, 4, 5, 7, 8 的中位数 → 5
  • 上半部分 10, 12, 13, 15, 25 的中位数 → 13
算法Q1Q3IQR
type 7 (INC)5.512.757.25
type 6 (EXC)4.7513.58.75
Tukey 铰链5138

type 6 倾向于给出向两端稍微张开的值,type 7 倾向于给出向内收拢的值,Tukey 铰链多数情况下介于两者之间。数据达到数百个以上时,算法之间的差异几乎消失,但在几十个以下时,甚至会改变对结果的解读。

IQR 与 1.5×IQR 围栏

四分位距 IQR = Q3 − Q1 是中间 50% 数据所占的宽度。均值和标准差容易被极端值大幅影响,而 IQR 只看中间一半,因此对极端值稳健。

Tukey 提出的异常值标准如下。

  • 下围栏:Q1 − 1.5 × IQR
  • 上围栏:Q3 + 1.5 × IQR
  • 把位于围栏之外的值标记为异常值候选。有时还会把 3 × IQR 之外的值单独区分为极端异常值。

把它应用到示例数据的最大值 25 上。

算法下围栏上围栏25 是异常值吗
type 75.5 − 1.5×7.25 = −5.37512.75 + 1.5×7.25 = 23.625是(超过 23.625)
type 64.75 − 1.5×8.75 = −8.37513.5 + 1.5×8.75 = 26.625
Tukey 铰链5 − 1.5×8 = −713 + 1.5×8 = 25边界值(不在外侧)

同一个值 25,因算法不同,有时是异常值,有时不是。因此报告中应同时注明使用了哪种四分位数定义,而且 1.5×IQR 标准最好用作挑出“需要再核查的值”的工具,而不是挑出“要删除的值”。

如何读箱线图

箱线图(box plot)是用图形表示四分位数的方式。

  1. 箱体:下边是 Q1,上边是 Q3。箱体的高度就是 IQR。
  2. 箱内的线:中位数。线偏向箱体一侧,说明分布不对称。
  3. 须(whisker):画到围栏内侧最远的数据点为止,而不是画到围栏值本身。
  4. :须之外的单个点是异常值候选。

如果上须比下须长且上方有点,可以怀疑是右尾较长的分布(正偏态)。收入、停留时长、等待时间这类不可能小于 0 的数据经常呈现这种形状。

实用建议

  • 如果需要与其他工具的结果对齐,先确认该工具使用的定义。与 Excel 用户比较时,type 7(INC)最为稳妥。
  • 异常值要在查明原因后再判断。 如果是输入错误(单位弄错、位数打错),就修正;如果是真实发生的极端值,就保留,并同时报告中位数、IQR 等稳健统计量。
  • 百分位数也有同样的问题。 像前 10% 的分界(第 90 百分位数)这类非四分位数的百分位数,也会因位置公式的选择不同而取值不同。
  • 样本较小时,四分位数本身就不稳定。数据在 10 个左右时,把原始数据全部以点的形式展示,比四分位数提供的信息更多。

在本站的描述统计计算器中,可以对同一组数据切换四分位数算法,比较 Q1·Q3·IQR·异常值围栏。

要点总结

  • 四分位数没有唯一的标准定义,Excel QUARTILE.INC 对应 R type 7,QUARTILE.EXC 对应 R type 6。
  • 示例 2, 4, 5, 7, 8, 10, 12, 13, 15, 25 中,Q1·Q3 在 type 7 下为 5.5·12.75,type 6 下为 4.75·13.5,Tukey 铰链下为 5·13。
  • 异常值围栏为 Q1 − 1.5×IQRQ3 + 1.5×IQR,同一个值是否为异常值可能因算法而异。
  • 箱线图的须画到围栏内最远的数据点。
  • 报告中要注明四分位数定义,并把异常值作为核查对象而非删除对象来处理。

→ 用计算器直接计算: 描述统计

更新日期 2026-09-23