🔢 算法深度解析

Tukey's Hinges vs. R-7 分位数
如何选择正确的四分位数方法

两个受人尊敬的四分位数定义可能会产生明显不同的第一和第三四分位数。本指南解释了为什么 Tukey's Hinges 和 R-7 插值方法会产生分歧,这种选择如何影响箱线图,以及 PlotNerd 如何保持您的团队一致。

发布于:2025年9月19日
更新于:2026年2月3日
阅读时间:13 分钟
难度等级:中级

1. 快速对比一览

当您需要快速了解每种算法的优势时,请使用下表。这两种方法都描述了第 25 和第 75 百分位数,但当四分位数位置落在观测数据点之间时,它们依赖于不同的逻辑。

方法 默认软件 公式摘要 最适合 注意事项
Tukey's Hinges AP 统计学, SPSS (Tukey 选项), 探索性数据分析教材 下半部分/上半部分的中位数 (当 n 为奇数时排除全局中位数) 教学, 简单报告, 抗干扰的探索性摘要 产生四分之一的跳跃;对于大 n 不够平滑
R-7 分位数 R `quantile()`, Python `numpy.quantile` (默认), Excel `PERCENTILE.INC` `h = (n - 1) * p + 1`, 在相邻值之间进行线性插值 数据科学工作流, 可复现研究, 平滑比较 需要向刚接触分位数的利益相关者解释插值

2. Tukey's Hinges 详解

统计学家 John Tukey 倡导可以用纸笔数学教授的抗干扰摘要。Tukey's Hinges 将有序数据集切成两半,并取每一半的中位数。当样本量为奇数时, 全局中位数将从两半中排除。这种方法使四分位数与实际观测值保持一致。

逐步计算配方

  1. 将数据集升序排序。
  2. 找到全局中位数 (Q2)。如果数据集个数为奇数,从两半中移除 Q2。
  3. 计算下半部分的中位数作为 Q1。
  4. 计算上半部分的中位数作为 Q3。

因为四分位数始终是现有的值,Tukey's Hinges 在喜欢离散、易于检查数字的课堂和报告中引起共鸣。代价是当新数据进入样本时,四分位数会突然跳跃。

3. R-7 线性插值

R-7 定义 (Hyndman 和 Fan 分类法中的类型 7) 将底层分布视为连续的。它计算所需百分位数的非整数索引,并在周围的观测值之间进行插值。 这种方法是 R, NumPy, Pandas, 和 Excel 包容性百分位数函数的默认值,使其成为跨软件协作的安全选择。

公式复习

h = (n - 1) * p + 1
j = floor(h)
gamma = h - j
Q_p = (1 - gamma) * x_(j) + gamma * x_(j + 1)

h 正好落在整数上时,gamma = 0,四分位数等于观测值 x_(j)

R 示例

scores <- c(6, 7, 15, 36, 39, 40, 41, 42, 43, 47, 49)
quantile(scores, probs = c(0.25, 0.5, 0.75), type = 7)
#     25%     50%     75%
# 25.5  40.0  43.0

Python 示例

import numpy as np
scores = np.array([6, 7, 15, 36, 39, 40, 41, 42, 43, 47, 49])
np.quantile(scores, [0.25, 0.5, 0.75], method="linear")
# array([25.5, 40. , 43. ])

当并排绘制多个组时,插值特别有用:随着数据的增量更新,四分位数平滑变化,保持比较的直观性。

4. 案例研究:课堂 vs 商业数据

真实数据显示了差异所在。PlotNerd 使您可以轻松在算法之间切换,导出 SVG 箱线图,并为利益相关者提供透明的计算。 在本地尝试以下数据集,或直接粘贴到 PlotNerd 计算器中。

数据集 A:统计学入门测验 (n = 11)

6, 7, 15, 36, 39, 40, 41, 42, 43, 47, 49
度量 Tukey's Hinges R-7 分位数
Q1 15.0 25.5
中位数 40.0 40.0
Q3 43.0 43.0

洞察:Tukey 与较低尾部的 15 分聚类对齐,而 R-7 通过插值考虑了 15 和 36 之间的差距。 您的算法选择可能会改变 Q1 是否落在评分等级内。

数据集 B:每周履行时间 (n = 36)

48, 50, 51, 52, 52, 53, 53, 54, 54, 55, 55, 56, 57, 57, 58, 59, 59, 60,
61, 61, 62, 62, 63, 64, 65, 65, 66, 68, 70, 71, 72, 74, 75, 77, 78, 82
度量 Tukey's Hinges R-7 分位数
Q1 54.5 54.5
中位数 61.0 61.0
Q3 68.5 68.7

洞察:具有中等偏斜的较大样本显示出极小的差异。只要记录了所选标准,报告任何一种方法都是可以接受的。

5. 团队决策框架

统一四分位数定义消除了仪表板和学术提交中无休止的来回讨论。 使用此清单选择符合利益相关者期望的方法。

四分位数选择清单

  • 教育优先? 选择 Tukey's Hinges 用于 AP 统计学、入门课程以及四分位数必须是观测值的评估。
  • 跨工具可复现性? 当与使用 R, NumPy, pandas, 或 Excel 百分位数函数的团队合作时,选择 R-7
  • 监管要求? 遵循强制算法(一些医疗审计引用 Tukey;许多金融报告指定 R-7)。
  • 可解释性 vs 平滑性? Hinges 更容易口头解释;R-7 避免了插入新观测值时的跳跃。
  • 记录选择。 在您的仪表板图例、技术附录或 PlotNerd 导出中注明方法,以防止日后混淆。

6. 在 PlotNerd 中实施选择

PlotNerd 的多算法引擎让您能在几秒钟内验证这两种方法。在结果面板上切换 Tukey's Hinges 和 R-7, 比较 Q1/Q3,并为团队导出对齐的视觉效果。

实时尝试比较

粘贴任何数据集,切换算法,并为您的报告下载 SVG 箱线图。

启动 Tukey Hinges 计算器

更新统计逻辑时,运行 npm run test:coverage 以确认 Vitest 套件维持在 vitest.config.ts 定义的 90/95% 阈值。 这些测试确保 Tukey 和 R-7 输出在更新 src/lib/plotnerd-engine.tssrc/lib/multi-algorithm-engine.ts 时保持一致。

7. 常见问题 (FAQ)

Excel 使用 Tukey's Hinges 还是 R-7?

Excel 的现代函数 (QUARTILE.INCPERCENTILE.INC) 符合 R-7 方法。为了向后兼容,旧版 QUARTILE 对大多数数据集表现相同。

切换方法时我的异常值会改变吗?

有时会。因为 IQR 依赖于 Q1 和 Q3,Tukey 可能会产生略窄的中间范围,标记更多的低端异常值。 在得出结论之前,请务必记录生成箱线图的算法。

标准化考试需要哪种方法?

大多数高中和本科考试都期望使用 Tukey's Hinges,因为四分位数出现在教科书中。 研究生级别的应用统计学通常假设使用 R-7 或明确指定分位数类型。

如何从 PlotNerd 导出两种结果?

生成数据集一次,切换算法,并下载单独的 SVG 导出。 重命名文件以包含方法,然后将它们附加到您的报告或学习管理系统中。

8. 总结与推荐阅读

Tukey's Hinges 和 R-7 量化了相同的直觉——数据的底部和顶部四分之一位于何处——但它们的假设不同。 选择 Hinges 用于课堂透明度,选择 R-7 用于跨平台可复现性。 无论您采用哪种方法,请保持一致并在每个交付物中引用它。

使用这些 PlotNerd 资源继续学习:

🔬 用您的数据查看差异

使用我们的交互式四分位数计算差异指南,并排比较 Tukey's Hinges 和 R-7 方法,包含逐步计算和视觉比较。

打开交互式指南 →

最后更新:2026年2月3日 · 由 PlotNerd 知识团队撰写