移動平均(moving average)を算出する。 移動平均としては、単純移動平均()、線形荷重移動平均(
)、指数平滑移動平均(
)の3種類の移動平均が計算可能である。
ある時における値を
で表したとき、
期の各種移動平均は式(3.1,3.2,3.3)で定義される。
![]() |
(3.1) |
![]() |
(3.2) |
![]() |
(3.3) |
mmvavg [s=] [k=] [n=] f= [t=] [-exp|-w] [alpha=] [skip=] [i=] [o=] [-assert_diffSize] [-assert_nullkey] [-assert_nullin] [-assert_nullout] [-nfn] [-nfno] [-x] [-q] [tmpPath=] [precision=] [--help] [--helpl] [--version]
s= |
ここで指定した項目(複数項目指定可)で並べ替えられた後、移動平均が計算される。 |
-qオプションを指定しないとき、s=パラメータは必須。 |
|
k= |
ここで指定された項目(複数項目指定可)を単位として集計する。 |
f= |
移動平均を求める項目名リスト(複数項目指定可)を指定する。 |
t= |
期間数を1以上の整数で指定する。 |
-exp指定時にalpha=を指定すればt=は指定できない。 |
|
-w |
線形加重移動平均を求める。 |
-exp |
指数平滑移動平均を求める。 |
alpha= |
-expが指定された時の平滑化係数を実数値で与える。 |
省略時はalpha=2/(t=の値+1)。 |
|
skip= |
出力を抑制する最初の行数。 |
デフォルト値: skip=(t=の値-1), -expが指定された場合はskip=0 |
最初の行は期数に満たないため出力されない。
$ more dat1.csv id,value 1,5 2,1 3,3 4,4 5,4 6,6 7,1 8,4 9,7 $ mmvavg s=id f=value t=2 i=dat1.csv o=rsl1.csv #END# kgmvavg f=value i=dat1.csv o=rsl1.csv s=id t=2 $ more rsl1.csv id%0,value 2,3 3,2 4,3.5 5,4 6,5 7,3.5 8,2.5 9,5.5
最初の行は期数に満たないため出力されない。
$ mmvavg s=id f=value t=2 -w i=dat1.csv o=rsl2.csv #END# kgmvavg -w f=value i=dat1.csv o=rsl2.csv s=id t=2 $ more rsl2.csv id%0,value 2,2.333333333 3,2.333333333 4,3.666666667 5,4 6,5.333333333 7,2.666666667 8,3 9,6
指数平滑移動平均(-exp)の場合は最初の行から出力される。
$ mmvavg s=id f=value t=2 -exp i=dat1.csv o=rsl3.csv #END# kgmvavg -exp f=value i=dat1.csv o=rsl3.csv s=id t=2 $ more rsl3.csv id%0,value 1,5 2,2.333333333 3,2.777777778 4,3.592592593 5,3.864197531 6,5.288065844 7,2.429355281 8,3.47645176 9,5.82548392
$ more dat2.csv id,key,value 1,a,5 2,a,1 3,a,3 4,a,4 5,a,4 6,b,6 7,b,1 8,b,4 9,b,7 $ mmvavg s=key,id k=key f=value t=2 i=dat2.csv o=rsl4.csv #END# kgmvavg f=value i=dat2.csv k=key o=rsl4.csv s=key,id t=2 $ more rsl4.csv id,key,value 2,a,3 3,a,2 4,a,3.5 5,a,4 7,b,3.5 8,b,2.5 9,b,5.5
$ more dat3.csv key,value a,1 a,2 a,3 a,4 a,5 b,6 b,1 b,4 b,7 $ mmvavg -q k=key f=value t=2 skip=0 i=dat3.csv o=rsl5.csv #END# kgmvavg -q f=value i=dat3.csv k=key o=rsl5.csv skip=0 t=2 $ more rsl5.csv key,value a,1 a,1.5 a,2.5 a,3.5 a,4.5 b,6 b,3.5 b,2.5 b,5.5
mmvstats : 平均だけでなく、各種統計量を指定可能。
mmvsim : 2変量の統計量を計算する。
mwindow : 動窓のデータを作成するので、そのデータを使えばmmvstatsで計算できない統計量も計算可能。