Boxplot和数据异常值

时间:2018-03-12 15:13:48

标签: python python-3.x matplotlib boxplot data-science

我有一个字典形式的数据,我转换为pandas,我试图封装超出68和72范围的绘图数据。最终我试图旋转框污点的标题90度,也排除异常数据,如果可能的话。在我现实世界场景下面的这个片段中,它不可能读到列标题,如果只有少数异常值超出范围68&,则也不必显示方框图。 72.非常感谢任何提示...

enter image description here

我会编写一些模仿我的真实世界应用程序的代码。

df = pd.DataFrame(dict(a=[71.5,72.8,79.3],b=[70.2,73.3,74.9],c=[63.1,64.9,65.9],d=[70.1,70.9,70.9]))

太热了:

TooHot = df.apply(lambda x: not (x > 72).any())
print('These zones are too warm')
df[TooHot[~TooHot].index].boxplot()
plt.show()

太酷了:

TooCool = df.apply(lambda x: not (x < 68).any())
print('These zones are too cool')
df[TooCool[~TooCool].index].boxplot()
plt.show()

1 个答案:

答案 0 :(得分:1)

showfliers=False中的关键字参数.boxplot()将删除在绘图上显示的异常值。 使用vert=False会使箱图水平(我认为你问的是什么?

关于matplotlib boxplots的文档是一个很好的起点:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.boxplot.html