【问题标题】:Boxplot vs fivenum: different outcomes?Boxplot vs Fivenum:不同的结果?
【发布时间】:2020-03-11 18:43:24
【问题描述】:

我通过使用得到了以下图片:

boxplot(series,
    col = "orange",
    border = "brown")

代码:

boxplot(d$y,
        col = "orange",
        border = "brown")
abline(h = min(d$y), col = "Blue")
abline(h = max(d$y), col = "Yellow")
abline(h = median(d$y), col = "Green")
abline(h = quantile(d$y, c(0.25, 0.75)), col = "Red")

改为生成下面的图片 我想看看箱线图是否标识了五个数字摘要。蓝色,绿色和红色线表示最小值,下铰链,中值,上铰链,正如预期的那样,但我不确定黄线的位置。黄线应该在上胡须末端...不是吗?

【问题讨论】:

  • 您能否发布一个可重现的 seriesd 数据帧示例?见:stackoverflow.com/questions/5963269/…
  • 不,您正在用max(d$y) 取那些y 值的最大值。因此,它在正确的位置。
  • 尝试用x <- boxplot(...)获取输出,比较!

标签: r boxplot


【解决方案1】:

fivenum(x) 函数返回值列表的最小值、下铰链(25% 分位数)、中值、上铰链(75% 分位数)和最大值。然而boxplot(x)$stats 返回下晶须、下铰链(25% 分位数)、中值、上铰链(75% 分位数)和上晶须。晶须值通常仅针对箱线图计算,默认情况下是最极端的数据点,距离上四分位数和下四分位数不超过四分位数范围的 1.5 倍。这些可能与混合值和最大值相同,也可能不同。

如果您在最大值处绘制黄线,您会期望它在最大值处绘制。有一些数据点位于您的胡须之外。

【讨论】:

    【解决方案2】:

    boxplot 默认情况下会删除异常值。有时maxmin 可能不在胡须所描绘的范围内(请参阅here)。

    set.seed(42)
    x = rnorm(200) * 10
    f = fivenum(x)
    b = boxplot(x)
    
    abline(h = b$stats)
    abline(h = b$out, col = "red")  #Outliers
    

    您可以从boxplot 中提取类似于fivenum 的值

    identical(f, c(min(b$out, b$stats[1]),
      b$stats[2:4],
      max(b$stats[5], b$out)))
    #[1] TRUE
    

    【讨论】:

      猜你喜欢
      • 2021-02-06
      • 1970-01-01
      • 2016-12-20
      • 1970-01-01
      • 1970-01-01
      • 2019-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多