背景描述
自从写了搞懂箱形图这篇文章,收到了许多小伙伴的回应,甚至还曾收到妈妈们关于小学数学中箱形图练习题的提问。博文收到回应至于作者还是非常欣慰的一件事,同时在不同观点的碰撞过程中,也感受到了伙伴们对知识准确性的追求。
上篇文章分享了许多理论性的知识点,之所以续写搞懂箱型图(下篇),还是由于有些问题在上一篇中没有说明白。本篇将通过实际例子来告诉大家,不必太纠结上四分位数和下四分位数具体的计算规则。因为四分位数的计算规则不是唯一的,有几种不同的计算方法,不同的统计分析软件,默认的处理方式也不太相同。
test = [1,2,3,4,5,6,7,8]
本文中还是以此为例进行演示
1. Rstudio计算四分位数
打开Rstudio软件,输入以下代码,可以查看变量test的四分位数计算结果,包括上四分位数,下四分位数。
2. Mathlab计算四分位数
在mathlab中是通过函数quantitle(x,p)来计算分位数的,其中x表示数据对象。计算四分位数时,参数p=0.25;计算四分之三分位数时,参数p=0.75。以下展示了这组数据在Mathlab中的计算结果。
同样一组数据在Rstudio中与Mathlab中竟然得到了不同的四分位数,这是什么情况?抱着这个问题再来看看python中的计算结果。
3. IPython计算四分位数
同样的打开IPython,来看一下python 中是如何计算四分位数的。
结果与Rstudio的结果一致,这又说明什么?为了进一步探究这个结果是如何计算出来的,我们需要查看numpy库中percentile()函数的实现方法。通过pycharm这个集成开发环境找到了percentile()函数的实现方法,以及其参数定义。
其中有个interpolation参数,正是定义了计算规则的关键。仔细一阅读,这下就明白了,如果不给interpolation参数赋值,该方法默认选择linear线性计算方法。
反之,可以通过给interpolation赋值选择计算分位数的方法。
- lower:表示以两数之间较小者作为分位数
- higher:表示以两数之间较大者作为分位数
- nearest:表示以分位点所靠较近的一个数作为分位数
- midpoint:表示以两个数的算数平均数作为分位数
这里所说的两个数,是指(n+1)/k,其中n表示一组数据的样本个数,k指这组数据被分成的段数,比如,二分位k=2,四分位k=4。
假设分数部分是f,就用if+j(1-f)即可得到相应的分位数
👏👏👏再看看我们以前的文章😃😃😃
🌺 Excel中数据分析工具库-相关系数篇
🌺 干货,手把手教会你做相关性分析
🌺 5年数据分析路,小结。
🌺 用户细分及画像分析
🌺 K-近邻算法及实践
欢迎关注,微信公众号“数据分析师之家”
扫描二维码 关注我们
💁提供职业规划、简历指导、面试辅导服务哦
QQ交流群:254674155
数据分析之家联合JEE RAY品牌为粉丝派发福利
添加粉丝福利派发官,领取粉丝福利哦