0 简介
在日常的数据分析中,分位数 是非常重要的一环,在探查数据分布,定义指标中都必不可缺。但 python 里的分位数计算却潜藏了一些坑点,特分享。
1 是什么
1.1 定义
我们先看看百度百科的 分位数 定义:
以最常见的 四分位数 为例:
四分位数(Quartile)也称四分位点,是指在统计学中把所有数值由小到大排列并分成四等份,处于三个分割点位置的数值。多应用于统计学中的箱线图绘制。
第一四分位数 (Q1),又称“较小四分位数”,等于该样本中所有数值由小到大排列后第25%的数字。
第二四分位数 (Q2),又称“中位数”,等于该样本中所有数值由小到大排列后第50%的数字。
第三四分位数 (Q3),又称“较大四分位数”,等于该样本中所有数值由小到大排列后第75%的数字。
第三四分位数与第一四分位数的差距又称四分位距(InterQuartile Range,IQR)。
正如上文所言,四分位数 就是将数据从小到大排成4等分,然后取出3个分割点的数值。百分位数则以此类推,通过分位数 我们可以对数据的分布有更深的了解:
1.2 计算方法
分位数 的定义是很容易理解的,但大部分人不知道的是,分位数的计算方法有两种:
我们依旧以 四分位数 为例
n+1 方法
# n是项数
Q1 = (n+1) * 0.25
Q2 = (n+1) * 0.5
Q3 = (n+1) * 0.75
n+1 算出来的结果会