R上/下胡须的箱形图

时间:2014-11-02 21:07:07

标签: r

我正在使用Boxplot的最基本功能,boxplot(x,...,范围= 1.5,但如果我不设置范围,让R使用其默认值。像boxplot(x)之类的东西,...,)胡须的确切分位数是什么?因为我的轮廓线大于或小于上/下胡须。我怎么知道上/下胡须上方或下方的轮廓的确切百分比?在其他单词,没有设置范围,我可以知道uper / lower whiskers的数据百分比是多少?

2 个答案:

答案 0 :(得分:1)

例如,您可以按如下方式计算增量的百分比:

# Some data with outliers:
d <- rnorm(100)
d[sample(1:100, 10)] <- rnorm(10,mean = 0, sd = 10)
bp <- boxplot(d)

# Get the values of the outliers:
out <- bp$out

# The proportion of outliers:
length(out)/length(d)*100
9

答案 1 :(得分:0)

不完全确定您的问题是什么,但是:?boxplotrange的默认值是1.5,然后它说

  

范围:这决定了情节胡须伸出的距离             框。如果“范围”为正,则晶须延伸到最大             极端数据点不超过“范围”倍             四分位数范围从框。值为零会导致             胡须延伸到极端数据。

换句话说,胡须不是定义为数据的一部分,而是四分位数范围的倍数。

如果您想知道比例,可以使用boxplot.stats

set.seed(101)
x <- runif(100)
bb <- boxplot.stats(x)
 c(mean(x<min(bb$stats)),mean(x>max(bb$stats)))
## [1] 0 0

mean(<logical value>)是计算比例的捷径。因为我从统一分布中选择了数据,所以实际上除了胡须之外还有没有点(通过查看boxplot(x)确认)。如果我要用rcauchy()重新做这件事,那就会有很多......