mavg

语法

mavg(X, window|weights, [minPeriods])

参数说明和窗口计算规则请参考: 滑动窗口系列(m 系列)

详情

X 为向量,则返回与 X 具有相同长度的向量。若第二个参数为:

  • window: 在给定长度(以元素个数或时间长度衡量)的滑动窗口内计算 X 元素的平均值。

  • weights:在长度为 size(weights) 的滑动窗口中计算 X 的加权平均值。weights 表示权重向量。结果前(size(weights) - 1)个元素为 NULL。此时 minPeriods 无效。

X 为矩阵/表则在每一列进行计算, 返回相同维度的矩阵/表。

例子

 $ X = 7 4 6 0 -5 32 9 8;
 $ Y = 7 4 6 NULL -5 32 9 8;
 $ weight = 2 3 5

 $ mavg(X, 4);
[,,,4.25,1.25,8.25,9,11]

 $ mavg(Y, 4);
[,,,5.67,1.67,11,12,11]

 $ mavg(Y, weight);
[,,5.6,5.2,-1.8571,18.125,13.1,13.1]
$ m=matrix(1 NULL 4 NULL 8 6 , 9 NULL NULL 10 NULL 2)
$ m.rename!(2020.01.06 2020.01.07 2020.01.09 2020.01.11 2020.01.12 2020.01.15, `col1`col2)
$ m.setIndexedMatrix!()
$ mavg(m, 3d) // 等价于 msum(m, 3)

label

col1

col2

2020.01.06

1

9

2020.01.07

1

9

2020.01.09

4

2020.01.11

4

10

2020.01.12

8

10

2020.01.15

6

2

$ mavg(m, 1w)

label

col1

col2

2020.01.06

1

9

2020.01.07

1

9

2020.01.09

2.5

9

2020.01.11

2.5

9.5

2020.01.12

4.3333

9.5

2020.01.15

6

6

相关函数:avg