Matplotlib boxplot:用什么算法计算范围并识别异常值?

时间:2017-07-27 15:06:25

标签: python matplotlib boxplot

我正在研究硕士论文。我已经使用自定义编码的Python处理了所有数据,我显示数据的主要方法之一是matplotlib中的boxplot。我一直在查看文档,但我看不出有关它如何对异常值(或“飞行员”)进行分类并将其从范围中排除的信息。

如果我找不到这些信息,那不是世界末日,但如果我在方法论章节中没有完整地描述我的统计工具,那对我来说就不完整了。

1 个答案:

答案 0 :(得分:3)

来自matplotlib.pyplot api documentation of boxplot。 boxplot有一个whis参数,用于指定胡须的范围。 dedault值为1.5。

  

whis:float,sequence或string(默认值= 1.5)

     

作为浮子,确定胡须的触及范围   第一和第三四分位数。换句话说,IQR就是   四分位数范围(Q3-Q1),上部晶须将延伸至最后   数据小于Q3 + whis IQR)。同样,较低的晶须会   延伸到大于Q1的第一个数据 - whis IQR。超过   晶须,数据被视为异常值,并作为个体绘制   点。将其设置为不合理的高值以强制胡须   显示最小值和最大值。或者,将其设置为   升序百分位数(例如[5,95])来设置胡须   在数据的特定百分位数。最后,whis可以是字符串   '范围'强迫胡须达到数据的最小值和最大值。

因此,晶须范围的默认值是四分位数范围的1.5 *。在实践中,这意味着任何低于Q1 - 1.5 *四分位数范围的值以及高于Q3 + 1.5 *的任何值,在使用默认值时,四分位数范围将被视为异常值。

给定非默认值,将针对该值调整输出。