percentile
语
percentile(X, percent, [interpolation=’linear’])
参数
X 是一个向量、矩阵或表。
percent 是 0 到 100 之间的整数或小数。
interpolation 是一个字符串,表示当选中的分位点位于在 X 的第 i 和第 i+1 个元素之间时,采用的插值方法。它具有以下取值:
‘linear’: \(X_i+(X_{i+1}-X_i) * fraction\), 其中 \(fraction=\frac{percentile/100-i/(size-1)}{1/(size-1)}\)
‘lower’: \(X_i\)
‘higher’: \(X_{i+1}\)
‘nearest’: \(X_i\) 和 \(X_{i+1}\) 之中最接近分位点的数据
‘midpoint’: \((X_i+X_{i+1})/2\)
如果没有指定 interpolation,默认采用 ‘linear’。
如果没有指定 interpolation,默认采用 ‘linear’。
详情
若 X 是一个向量,计算其指定的百分位数。与所有其它聚合函数一致,计算时忽略 NULL 值。
若 X 为矩阵,计算每列的指定的百分位数,返回一个向量。
若 X 为表,计算每列的指定的百分位数,返回一个表。
例子
$ a=[6, 47, 49, 15, 42, 41, 7, 39, 43, 40, 36];
$ percentile(a,50);
40
$ percentile(a,54);
40.4
$ percentile(a,25,"lower");
15
$ percentile(a,75,"higher");
43
$ percentile(a,5,"midpoint");
6.5
$ percentile(a,5,"nearest");
6
$ m=matrix(1 2 5 3 4, 5 4 1 2 3);
$ m;
#0 |
#1 |
---|---|
1 |
5 |
2 |
4 |
5 |
1 |
3 |
2 |
4 |
3 |
$ percentile(m, 75);
$ [4,4]