累计窗口系列(cum 系列)

累积窗口,即窗口的起始边界固定,结束边界逐步向右移动的窗口。针对累计窗口计算场景,DolphinDB 提供了 cum 系列函数。

cum 系列函数介绍:

$ accumulate(func, X, [init])

注意:如果指定了 init,第一个窗口的结果为 init + X [0]。

  • 内置的 cum 系列函数的通用参数模板如下:

$ cumfunc(X)
$ cumfunc(X, Y)

参数

X (Y) 是一个标量、向量、矩阵或表。


cum 系列函数如下:


窗口确定规则:

cum 系列函数可以视为一个累计的窗口计算,对数据中的每一个元素,都会进行一次累计计算,因此返回一个和元数据等长的向量(相同维度的矩阵)。

其计算规则如下图:

../../_images/cum_1.png

上图的对应代码,这里以 cumsum 为例:

$ X = 1 1 2 3 4 5 NULL 8 9 1 3
$ cumsum(X)
[1, 2, 4, 7, 11, 16, 16, 24, 33, 34, 37]