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


26

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

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

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

PK

Ответы:


35

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

> percentile <- ecdf(1:10)
> percentile(8)
[1] 0.8

10

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

ecdf_fun <- function(x,perc) ecdf(x)(perc)
ecdf_fun(1:10,8)
>[1] 0.8
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.