假设我有一个这样的数字分布。
set.seed( 145)
data <- runif(100, 0, 500)
q = quantile( data, probs=c ( seq(0,1, by=.01) ) )
对于给定的数字300,我想知道它在数据中的百分位数是多少?我可以猜出它在哪个q bin之间但这很复杂,有没有更简单的方法?
谢谢。
我们可以用findInterval
names(q)[findInterval(300, q) +1]
[1] "54%"
其中q
对应
> q[55]
54%
306.9737