R中的百分位数(含)

  • 本文关键字:百分 r percentile
  • 更新时间 :
  • 英文 :


百分比秩通常由以下公式定义:

百分比秩=(L/N(*100

L=数据集中低于或等于感兴趣值的值的数目N=的数据点数量

在R中,通常通过计算向量中值的百分位数

Percentile_Rank=rank(vec)/length(vec)*100) 

然而,我想使用一个稍微修改过的百分位数的定义,它是由与上面相同的公式定义的,但

L=数据集中严格低于感兴趣值的值的数量

这类似于Excel中的PERCENTIARANK.EXC函数。

R中是否内置了一个函数来计算这一点?否则,我该怎么做?

这就是您想要的吗?

y = 1:10
# traditional percentile
rank(y)/length(y) * 100
#  [1]  10  20  30  40  50  60  70  80  90 100 
# percentile considering those values preceding current value
vapply(y, function(x){
sum(y < x)/length(y) * 100
}, FUN.VALUE = numeric(1L))
#  [1]  0 10 20 30 40 50 60 70 80 90 

最新更新