在上一篇文章的最后,我们简单提及了离群值(outliers)(或称之为异常值)。“关于离群值的两个重要问题就是:‘如何找到它们?’以及‘如何处理它们?’”(“The two big questions about outliers are ‘how do you find them?’ and ‘what do you do about them?’” (Ord, 1996))。 本文将讨论第一个问题。
提要
1. 箱型图(box)2. 双变量箱型图3. 多元变量检测4. 另一个例子5. 总结
1. 箱型图(box)
在上一篇文章的最后,我们介绍了箱型图的绘制,并简单提及了箱型图可以用来检测离群值的。
我们用Stata自带的auto.dta
数据进行说明。导入该数据集之后,绘制出汽车价格price
的箱型图。
1sysuse auto.dta, clear
2graph box price, marker(1, mlabel(price))
其中,marker()
选项用于设定位于箱体上下引线之外的值(outside values)的外型,在这里我们给这些值添加了标签,标签上的值为其价格。结果如下:
可以看到,变量price
有许多超过箱体上引线的值:这些outside values最大的为15906,最小的为9690。那么这些值是离群值么?
从生活常识上来说,如果一辆奥迪的售价是100万,我们一点也不会吃惊;而如果一辆奥拓的售价为100万,估计就可以上热搜了。
这就表明,单纯地从某一个变量的分布特征来判断其是否为离群值是有失偏颇的。
因此,我们可以结合其他变量来判断某些值是否是离群值。
2. 双变量箱型图
根据最基本的常识(