cumsumTopN
New in version 1.30.22.
语法
cumsumTopN(X, S, top, [ascending=true], [tiesMethod=’latest’])
部分通用参数说明和窗口计算规则请参考:cumTopN 系列
详情
在给定长度(以元素个数衡量)的滑动窗口内,根据 ascending 指定的排序方式将 X 按照 S 进行稳定排序后,取前 top 个元素并计算累积和。
返回值:LONG 或 DOUBLE 类型。
例子
$ X=1 2 3 10 100 4 3
$ S = 0.3 0.5 0.1 0.1 0.5 0.2 0.4
$ cumsumTopN(X, S, 6, 4)
[1,3,6,16,116,120,121]
$ X = matrix(1..10, 11..20)
$ S = matrix(2022.01.01 2022.02.03 2022.01.23 NULL 2021.12.29 2022.01.20 2022.01.23 2022.01.22 2022.01.24 2022.01.24, NULL 2022.02.03 2022.01.23 2022.04.06 NULL 2022.02.03 2022.02.03 2022.02.05 2022.02.08 2022.02.03)
$ cumsumTopN(X, S, 6, 4)
#0 |
#1 |
---|---|
1 |
|
3 |
12 |
6 |
25 |
6 |
39 |
11 |
39 |
17 |
55 |
24 |
72 |
30 |
90 |
30 |
95 |
30 |
96 |
$ id=rand(10,10)
$ price=rand(100,10)
$ t=table(id, price)
$ select cumsumTopN(price, id, 6, 4) as result from t
result |
---|
32 |
130 |
145 |
223 |
283 |
292 |
344 |
364 |
406 |
333 |