了解分位数()和分位数的基础

时间:2018-11-18 02:36:49

标签: r statistics

如果有59个观测值,我很困惑为什么quantile(data, probs = 0.05)将3个值放在第5个百分位数之下,因为3/59 =〜0.051。

library(tidyverse)
a <- seq(c(1:59))
b <-rnorm(59)
df <- data.frame(a,b)
df_5thperc <- df %>% summarize(`05%` = quantile(b, 
probs=0.05))
y <- mean(df_5thperc$`05%`)
ggplot() + geom_point(data = df, aes(x = a, y = b)) + 
geom_hline(yintercept = y, color = "blue")

enter image description here

1 个答案:

答案 0 :(得分:3)

要在@BenBolker上扩展,可以考虑type函数的quantile()参数。您正在使用连续分布,因此类型4到9是相关的。例如:

 b[b <  quantile(b, probs = c(.05), type = 9)]

类型4和6将提供您可能期望的结果

 [1] -1.893092 -3.263889

5、7、8和9会给出

 [1] -1.893092 -1.538927 -3.263889

帮助文件详细说明了原因,但最后归结为以下事实:没有商定的方法来估计样本分位数(包括中位数)。