分享

统计基础:【27】剔除箱线图所提示的异常值

 生物_医药_科研 2019-04-09

如果我们对一组包含异常值的数据绘制箱线图(boxplot),一般会得到如下图所示的图形。下面的这个图形中包含了大量异常数据点,它们偏离中间的数据主体,这个图里面既包含偏大的异常值,也包含了偏小的异常值。

看到此图,你可能会很自然的问出一个问题:箱线图显示异常数据的依据是什么?我们来看下面这个简单的箱线图:箱线图中间是一个箱体,也就是粉红色部分,箱体左边,中间,右边分别有一条线,左边是下四分位数(Q1),右边是上四分位数(Q3),中间是中位数(Median),上下四分位数之差是四分位距(IQR),用 Q1-1.5IQR 得到下边缘(最小值),Q3+1.5IQR 得到上边缘(最大值)。在上边缘之外的数据就是极大异常值,在下边缘之外的数据极小异常值,总之在上下边缘之外的数据就是异常值。

搞清楚异常数据的产生原理之后,想要剔除它们就十分简单了,这里给出一个简单的步骤:

  • 求出这组数据的四分位数,其中上下四分位数分别为 Q3,Q1;

  • 求出这组数据的四分位距 IQR;

  • Q1- 1.5IQR 得到这组数据的下边缘;

  • Q3+1.5IQR 得到这组数据的上边缘;

  • 过滤掉上下边缘之外的异常数据;

用R剔除箱线图中的异常值


下面给出用R 代码实现的数据异常值处理函数,该函数实现功能为:输入一个数据集,指定该数据集中的某个数值型变量,返回根据上述规则剔除异常值后的数据。需要注意的是,代码中使用了管道符号(%>%)以及 dplyr 包,因此在使用这段代码时,你需要导入 tidyverse 这个包。

我们剔除其中的异常数据后,得到箱线图如下图所示。你会发现,这个箱线图依然存在异常值,这是为什么呢?

箱线图中的极端值为什么删除后还会存在?


首先,需要说明的是,当一组数据中出现极端值,通过前文所述的方法剔除后,再次绘制箱线图,仍然存在极端值的情况是正常现象,不是你操作错误,也不是这种方法有问题。但是并不是对所有数据都是如此,有的数据经过一次极端值剔除操作后,就没有极端值了,但是有的数据需要经过几次操作,才能使得绘制的箱线图没有极端值显示。

那这就引出了另外一个问题:如果需要多次操作,才能使得对这组数据绘制箱线图没有极端值显示,那么需要剔除几次极端值?

这里我们来举个例子:我手里有一批调查得到的人们的收入数据(数据集A),通过绘制箱线图发现其中存在极端值,如下图所示:

通过本文第一部分所述的方法剔除其中的异常值,得到数据集B,对数据集B再次绘制箱线图,发现仍然存在极端值:

此时我们来思考一下,对于数据集A而言,剔除其中的极端值就得到数据集B,换句话说,数据集B是数据集A剔除极端值后的数据集,因此对于数据集A而言,我们操作一次其实就已经删除了其中的极端值了。当我们再次对数据集B绘制箱线图所识别出的极端值应该算是数据集B的极端值,而不是数据集A的。因此数据集当中的极端异常值一般来说,只需要剔除一次即可

对于一个数据集,如果你想把每次检测出来的数据集都给剔除,我建议你使用编写代码的方式来完成,因为使用代码比较容易实现。对于我的这个例子,通过6次处理后,最终所得数据集中就不存在极端值了。这里的代码是R语言的代码(income是一个数据表,'可支配收入'是其中的变量),其中使用到的用于剔除极端值的函数 drop_outliers 在前文中已经给出了,这里我通过管道符号(%>%) 的形式对该函数进行调用,操作连贯且非常方便。最后得到的数据集,就不存在任何异常值了。由于这里涉及到多次剔除异常值的操作,用编写代码的形式完成,会显得比较简单,如果用菜单型的软件工具处理,则需要多次进行重复操作,比较繁杂,容易出错。

用SPSS剔除箱线图中所提示的异常值

第一步:对要分析的变量绘制箱线图,观察是否存在极端值,存在才需要处理,不存在的话,后续的操作就是不需要且无效的。

第二步:计算出要处理的这个变量的四分位数(Q1,Q3)以及四分位距(IQR)。可以使用SPSS的【分析】→【描述统计】→【探索】功能来自动计算。

第三步:根据第一步的结果,在Excel中计算得到上下边缘。

第四步:根据步骤二中计算得到的上下边缘,剔除超出边缘的数据。使用SPSS的【数据】→【选择个案】功能,对要处理的变量进行条件限制即可得到剔除极端异常值后的数据集。

处理完成后,你会发现在上下边缘之外的数据都被过滤掉了,

本文节选自《妙趣横生的统计学》课程,

介绍了如何发现箱线图中的异常值,

如何用R语言和SPSS剔除异常值,

如果想要了解在Excel中的提出方式,

想要学习更多详细内容,

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多