我如何在R的箱线图中找到实际的离群值

时间:2020-01-14 16:24:13

标签: r boxplot outliers

我有一个像这样的箱线图: boxplot

根据我对异常值的了解,最大线上方的点是异常值,但是由于我不认为所有假定的异常值实际上都是异常值,因此如何找到实际上是异常值的点?

2 个答案:

答案 0 :(得分:4)

根据this post(与我的回忆相匹配),晶须的计算方式为(伪代码):

upper whisker = min(max(x), Q_3 + 1.5 * IQR)
lower whisker = max(min(x), Q_1 – 1.5 * IQR) 

晶须之外的任何点均被视为离群值。

如果要检查异常点,可以分配boxplot的输出,并根据帮助页面的建议查看out字段:

 out: the values of any data points which lie beyond the extremes
      of the whiskers.

类似

box <- boxplot(rnorm(100))
box$out

答案 1 :(得分:4)

使用boxplot对象的功能:

set.seed(59737908)

x <- c(rnorm(10), 10, -55)

outliers <- boxplot(x, plot = F)$out
outliers
#[1]  10 -55

P.S。 @alan是第一位