I have a set of real numbers. I need to estimate the quantile of a new number. Is there any clean way to do this in R? in general?
I hope this is not ultra-trivial ;-)
Much appreciated for your response.
PK
Cross Validated is a question and answer site for people interested in statistics, machine learning, data analysis, data mining, and data visualization. It only takes a minute to sign up.
Sign up to join this communityAs whuber pointed out, you can use ecdf
, which takes a vector and returns a function for getting the percentile of a value.
> percentile <- ecdf(1:10)
> percentile(8)
[1] 0.8
ecdf(1:10)(8)
also works.
$\endgroup$
Jun 8, 2020 at 17:44
To expand on what whuber and cwarden stated, sometimes you want to use a function in a "classical" R way (for example, to use inside a magrittr pipe). Then you could write it yourself using ecdf()
:
ecdf_fun <- function(x,perc) ecdf(x)(perc)
ecdf_fun(1:10,8)
>[1] 0.8