R 中的百分位数排名(含)
Percentile rank (inclusive) in R
百分等级通常由以下公式定义:
百分位排名 = (L/N)*100
L=数据集中小于或等于感兴趣值的值数
N=数据点数
在 R 中,通常通过
计算向量中值的百分位数排名
Percentile_Rank=rank(vec)/length(vec)*100)
不过,我想使用一个稍微修改过的百分位排名定义,它的定义与上面的公式相同,但是
L = 数据集中严格低于感兴趣值的值数
这类似于Excel中的PERCENTILERANK.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
百分等级通常由以下公式定义:
百分位排名 = (L/N)*100
L=数据集中小于或等于感兴趣值的值数 N=数据点数
在 R 中,通常通过
计算向量中值的百分位数排名Percentile_Rank=rank(vec)/length(vec)*100)
不过,我想使用一个稍微修改过的百分位排名定义,它的定义与上面的公式相同,但是
L = 数据集中严格低于感兴趣值的值数
这类似于Excel中的PERCENTILERANK.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