给定数据绘制箱形图的算法

时间:2012-05-16 22:21:56

标签: statistics drawing plot boxplot

我已经从一些未知的分布中抽取了实数值的数组,比如X。我想为这些数据绘制一个方框图。

在最简单的情况下,我需要知道五个值:minQ1medianQ3max

琐碎,min = X[0]max = X[length(X)-1],可能还有median = X[ceil(length(X)/2)]。但我想知道如何确定下四分位数Q1Q3

当我使用MATLAB绘制X = [1,2,4]时,我得到以下结果:

enter image description here

在我看来,如果获得值Q1 = 1.25Q3 = 3.5有一些魔力,但我不知道它是什么神奇的。有人有这方面的经验吗?

2 个答案:

答案 0 :(得分:1)

中位数将数据分成两半。上半部分的中位数= Q1,后半部分的中位数= Q3。

更多信息:http://www.purplemath.com/modules/boxwhisk.htm


关于MatLab箱图的注意事项:Q1和Q3可能在MatLab中以不同的方式计算,我会尝试使用更多的测试数据。使用我的方法,Q1应为1,Q3应为4.


编辑:

MatLab可能的计算方法是上半部分的中位数和第一个数字之间的差异,并且需要四分之一。将其添加到第一个数字以获得Q1。 同样(大致)适用于Q3:取中位数和最大数之间的差值,并从最高数中减去四分之一。那是第三季。

答案 1 :(得分:1)

如果您转到框图的原始定义(查找John Tukey),则使用中点的中位数(即数据集中的2为1,2,4)。端点是最小值和最大值。

盒子的顶部和底部不是由四分位数精确定义,而是称为“铰链”。铰链是数据的上半部分和下半部分的中位数。如果存在奇数个观测值,则整个集合的中值用于确定两个铰链。下铰链的中位数为(1,2)或1.5。顶部铰链的中位数为(2,4)或3。

实际上有几十个箱形图四分位数的定义(维基百科:“没有关于选择四分位值的普遍协议”)。如果你想合理化MatLab的盒子图,你必须检查它的文档。否则,您可以通过谷歌来试图找到与结果相匹配的方法。

Minitab为数据集中的铰链提供1和4。 Excel的PERCENTILE函数给出了1.5和3,它至少在这种情况下偶然匹配Tukey的算法。