首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >须被定义为1.5* IQR,两个鞭子在情节中如何能从python海运箱图中区别开来?

须被定义为1.5* IQR,两个鞭子在情节中如何能从python海运箱图中区别开来?
EN

Stack Overflow用户
提问于 2018-03-06 20:18:24
回答 2查看 1.2K关注 0票数 3

根据海运文件的说法,它的盒形法使晶须变长了1.5*IQR。然而,从该文档中可以看出,情况似乎并非如此。上下胡须不一样。此外,似乎不是1.5IQR。

有人能解释一下他们为什么不同吗?

https://seaborn.pydata.org/generated/seaborn.boxplot.html

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-06 20:59:56

原则上,假设是正确的,即如果使用四分位数的倍数(IQR),盒形图上的晶须应具有相同的长度。

然而,实际上有两种情况是不正确的。不幸的是,维基百科的英文版本并没有说明这些原因,但让我翻译一下德语维基百科的解释。

晶须 源自John W. Tukey的一个可能的定义是将晶须的长度限制在最大1.5倍的四分位数范围内(1.5*IQR)。 在这种情况下,晶须并不是完全以这个值结尾,而是以仍然位于这个边界内的数据的值结束。因此,晶须的长度是由数据决定的,而不是由四分位数范围庄严地决定的。这就是为什么晶须不需要在盒子两端的大小相同的原因。如果在1.5*IQR边界外没有值,则晶须的长度由最小值和最大值决定。否则,晶须之外的值将在图表中单独标记;然后这些值可以被视为异常值。

同一维基百科页面上的情节可能会使这一点变得更加明显:

在问题中显示的图表中,最肯定的第二个原因是:即较低的晶须以最低数据值的位置结束。

票数 4
EN

Stack Overflow用户

发布于 2018-03-06 20:25:57

matplotlib允许单独的错误条(我想这就是你所说的“胡须”的意思)。下面是matplotlib的页面:demo.html

可以通过使用xerr和yerr:"xerr/yerr :标量或类似数组的、形状( N)或形状(2,N)(可选)来显式定义错误条。

如果标量数、类len(N)数组对象或类似于N元素的数组对象,则在+/-值处绘制相对于数据的错误条。默认为无。

如果形状为2xN,则在-row1和+row2处绘制相对于数据的错误条。“

...and将它们插入各自在matplotlib.axes.Axes.errorbar中的位置

代码语言:javascript
复制
Axes.errorbar(x, y, yerr=None, xerr=None, fmt='', ecolor=None, elinewidth=None, capsize=None, barsabove=False, lolims=False, uplims=False, xlolims=False, xuplims=False, errorevery=1, capthick=None, *, data=None, **kwargs)

页面:gen/matplotlib.axes.Axes.errorbar.html

如果您对使错误条在+y和-y方向上不同感兴趣,那么您可以在相同的图形上绘制两次,其中第二个图除了错误条之外没有标记,而这些错误条的中心是+y和-y值之间的平均值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49139299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档