Оценить квантиль значения в векторе

26

У меня есть набор реальных чисел. Мне нужно оценить квантиль нового числа. Есть ли чистый способ сделать это в R? в целом?

Я надеюсь, что это не ультра-тривиально ;-)

Очень признателен за ваш ответ.

PK

поляризовать
источник

Ответы:

35

Как указал whuber, вы можете использовать ecdf, который берет вектор и возвращает функцию для получения процентиля значения.

> percentile <- ecdf(1:10)
> percentile(8)
[1] 0.8
cwarden
источник
10

Чтобы расширить то, что говорится в whuber и cwarden, иногда вы хотите использовать функцию «классическим» R-способом. Тогда вы можете написать это самостоятельно, используя ecdf():

ecdf_fun <- function(x,perc) ecdf(x)(perc)
ecdf_fun(1:10,8)
>[1] 0.8
zerweck
источник