5

我正在尝试使用 ecdf,但我不确定我是否做得对。我的最终目的是找到与特定值对应的分位数。举个例子:

sample_set <- c(20, 40, 60, 80, 100) 
# Now I want to get the 0.75 quantile:
quantile(x = sample_set, probs = 0.75)
#result:
75% 
80
# Let's use ecdf
ecdf(x = sample_set) (80)
#result
0.8

为什么会出现这种差异?我是在犯一些小错误,还是取决于分位数的计算方式?

谢谢,马克斯

4

1 回答 1

5

有两点。首先,正如您所猜测的,这取决于quantile计算方式。具体来说,它取决于参数type。您可能想要选择的是type = 1,因为它对应于经验分布函数的倒数(请参阅?quantile)。其次,由于给出了一个离散的阶跃函数,即 ecdf 不是严格递增的,因此由于分位数的定义ecdf方式,您无法获得完全相等(参见第二个公式)。

于 2016-03-10T22:05:14.090 回答