percentileRank
New in version 2.00.1.
语法
percentileRank(X, score, [method=’excel’])
参数
X 是一个数值型向量、矩阵或表。若为矩阵,每列计算百分位,输出一个向量。若为表,每列计算百分位,输出一个表。
score 是一个数值型标量,表示需要得到其排位的值。
method 是一个字符串,表示计算百分位的方法,包含以下取值,默认值为 “excel”:
“excel”: 小于 score 的元素个数占不等于 score 的元素个数的百分比;若 score 不在 X 中,其百分位计算公式为:
\(P(score) = P_i +\dfrac{(score-X_i)*(P_{i+1} - P_i)}{X_{i+1} - X_i}\)
其中,\(X_i\) 和 \(X_{i+1}\) 为数据集X中的紧邻score的前、后两个数值,\(P_i\) 和 \(P_{i+1}\) 分别为 \(X_i\) 和 \(X_{i+1}\) 的百分位。
“rank”: 小于等于 score 的元素个数占元素总数的百分比。当有多个值相等的 score 时,取它们百分位的平均值;
“strict”: 严格小于 score 的元素个数占元素总数的百分比;
“weak”: 小于等于 score 的元素个数占元素总数的百分比;
“mean”: “strict” 和 “weak” 的平均值。
详情
计算一个数值在数值向量中的百分位数(0~100)。计算时忽略 NULL 值。
例子
$ a = 2 3 4 4 5;
$ percentileRank(a, 4);
66.666667
$ percentileRank(a, 3);
25
$ percentileRank(a, 4, "rank");
70
$ percentileRank(a,75,"weak");
80
$ percentileRank(a,5,"strict");
40
$ percentileRank(a,5,"mean");
60
$ percentileRank(1 5 8, 6, "excel")
66.666667