f=パラメータで指定した項目の累積を計算し、新しい項目として追加する。 k=を指定することで、キー単位毎に累積計算が可能となる。
maccum f= s= [k=] [i=] [o=] [-assert_diffSize] [-assert_nullkey] [-assert_nullin] [-assert_nullout] [-nfn] [-nfno] [-x] [-q] [tmpPath=] [precision=] [--help] [--helpl] [--version]
f= |
ここで指定した項目(複数項目指定可)の値が累積される。 |
項目の値がNULL値である場合は無視される。 |
|
:(コロン)で新項目名を指定する必要がある。例)f=数量:数量累計 |
|
s= |
ここで指定した項目(複数項目指定可)で並べ替えられた後、累積が計算される。 |
-qオプションを指定しないとき、s=パラメータは必須。 |
|
k= |
累積の単位となる項目名リスト(複数項目指定可)を指定する。 |
「数量」と「金額」項目の累積値を計算し、「数量累計」と「金額累計」という項目名で出力する。
$ more dat1.csv 顧客,数量,金額 A,1,10 A,2,20 B,1,15 B,3,10 B,1,20 $ maccum s=顧客 f=数量:数量累計,金額:金額累計 i=dat1.csv o=rsl1.csv #END# kgaccum f=数量:数量累計,金額:金額累計 i=dat1.csv o=rsl1.csv s=顧客 $ more rsl1.csv 顧客%0,数量,金額,数量累計,金額累計 A,1,10,1,10 A,2,20,3,30 B,1,15,4,45 B,3,10,7,55 B,1,20,8,75
「顧客」項目を単位に「数量」と「金額」項目の累積値を計算し、「数量累計」と「金額累計」という項目名で出力する。
$ more dat1.csv 顧客,数量,金額 A,1,10 A,2,20 B,1,15 B,3,10 B,1,20 $ maccum k=顧客 s=顧客 f=数量:数量累計,金額:金額累計 i=dat1.csv o=rsl2.csv #END# kgaccum f=数量:数量累計,金額:金額累計 i=dat1.csv k=顧客 o=rsl2.csv s=顧客 $ more rsl2.csv 顧客,数量,金額,数量累計,金額累計 A,1,10,1,10 A,2,20,3,30 B,1,15,1,15 B,3,10,4,25 B,1,20,5,45
「数量」と「金額」項目の累積値を計算し、「数量累計」と「金額累計」という項目名で出力する。 NULLは無視される。結果もNULLが出力される。
$ more dat2.csv 顧客,数量,金額 A,1,10 A,,20 B,1,15 B,3, B,1,20 $ maccum s=顧客 f=数量:数量累計,金額:金額累計 i=dat2.csv o=rsl3.csv #END# kgaccum f=数量:数量累計,金額:金額累計 i=dat2.csv o=rsl3.csv s=顧客 $ more rsl3.csv 顧客%0,数量,金額,数量累計,金額累計 A,1,10,1,10 A,,20,,30 B,1,15,2,45 B,3,,5, B,1,20,6,65
mshare : 構成比を計算する。maccumと組み合わせて累積相対度数が計算できる。
mcal : 前行の計算結果#{}を利用することで累計計算ができる。