【问题标题】:box plot: whisker definition in pandas and matplotlib箱线图:pandas 和 matplotlib 中的晶须定义
【发布时间】:2018-08-13 14:04:29
【问题描述】:

来自https://en.wikipedia.org/wiki/Box_plot

箱线图的胡须有以下可能的定义:

  • 所有数据的最小值和最大值[1]
  • 最低基准仍在下四分位数 1.5 IQR 范围内,最高基准仍在上四分位数 1.5 IQR 范围内
  • 高于和低于数据平均值的一个标准差
  • 第 9 个百分位和第 91 个百分位
  • 第 2 个百分位和第 98 个百分位。

我在想pandas:

df['data'].plot(kind = 'box',  sym='bD')

胡须使用哪个定义?

另外,对于matplotlib 库:

ax.boxplot(dfa.duration)

胡须使用哪个定义?

谢谢!

【问题讨论】:

    标签: python-3.x pandas matplotlib boxplot


    【解决方案1】:

    boxplot documentaton 说的是胡须

    whis:浮点数、序列或字符串(默认 = 1.5)

    作为浮点数,确定胡须的范围超出第一和第三四分位数。换句话说,如果 IQR 是四分位距 (Q3-Q1),则上须线将延伸到小于 Q3 + whisIQR) 的最后一个数据。同样,下须线将延伸到大于 Q1 - whisIQR 的第一个数据。除了胡须,数据被认为是异常值,并被绘制为单个点。将此设置为不合理的高值以强制胡须显示最小值和最大值。或者,将其设置为百分位数的升序(例如,[5, 95])以将胡须设置为数据的特定百分位数。最后,whis 可以是字符串 'range' 来强制胡须为数据的最小值和最大值。

    问题列表中唯一无法轻松实现的定义是“一个标准偏差”,所有其他定义都可以使用此参数轻松设置。默认为 1.5IQR 定义。

    pandas.DataFrame.boxplot 调用 matplotlib 函数。因此它们应该是相同的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-03
      • 2014-06-24
      • 1970-01-01
      • 1970-01-01
      • 2019-03-19
      • 2014-03-26
      • 1970-01-01
      相关资源
      最近更新 更多