mvar
语法
mvar(X, window, [minPeriods])
窗口计算规则请参考:mFunctions
详情
在给定长度(以元素个数或时间长度衡量)的滑动窗口内计算 X 的样本方差。
参数
X 是一个向量/矩阵/表/元组(元素为标量或等长向量)/字典。
window 是大于等于 2 的正整型或 DURATION 标量。表示滑动窗口的长度。
注:
在流计算引擎中调用滑动窗口函数时,window 的上限为 102400。
minPeriods 是一个正整数。为滑动窗口中最少包含的观测值数据。
返回值
- 输入为向量时,返回一个与输入等长的 DOUBLE 类型向量。
- 输入为矩阵时,返回一个与输入矩阵同维度的矩阵,每列分别计算。
- 输入为表时,返回一个与输入表结构相同的表。
- 输入为元组时,返回对应的元组结构。
例子
mvar(1..6, 5);
// output: [,,,,2.5,2.5]
mvar(1..6, 5, 2);
// output: [,0.5,1,1.666667,2.5,2.5]
m=matrix(1 6 2 9 4 5, 11 12 18 23 21 10);
m;
| #0 | #1 |
|---|---|
| 1 | 11 |
| 6 | 12 |
| 2 | 18 |
| 9 | 23 |
| 4 | 21 |
| 5 | 10 |
mvar(m,3);
| #0 | #1 |
|---|---|
| 7 | 14.333333333333314 |
| 12.333333333333335 | 30.333333333333314 |
| 13 | 6.333333333333372 |
| 7 | 49 |
m=matrix(1 NULL 4 NULL 8 6 , 9 NULL NULL 10 NULL 2)
m.rename!(date(2020.04.06)+1..6, `col1`col2)
m.setIndexedMatrix!()
mvar(m,4d)
| label | col1 | col2 |
|---|---|---|
| 2020.04.07 | ||
| 2020.04.08 | ||
| 2020.04.09 | 4.5 | |
| 2020.04.10 | 4.5 | 0.5 |
| 2020.04.11 | 8 | |
| 2020.04.12 | 4 | 32 |
mvar(m,1w)
| label | col1 | col2 |
|---|---|---|
| 2020.04.07 | ||
| 2020.04.08 | ||
| 2020.04.09 | 4.5 | |
| 2020.04.10 | 4.5 | 0.5 |
| 2020.04.11 | 12.3333 | 0.5 |
| 2020.04.12 | 8.9167 | 19 |
