Previous: mpadding (行補完) コマンド Up: コマンドリファレンス Next: mproduct 参照ファイルの直積結合 MCMD2
MCMD2 : コマンドリファレンス : mpaste 参照ファイル項目の行番号マッチング結合

3.42 mpaste 参照ファイル項目の行番号マッチング結合

入力ファイルと参照ファイルを行番号でマッチングさせて結合する。 データ件数が異なる場合は、少い方のデータに合わせる。 -nや-Nを指定することでマッチングできな行もNULL値で結合することが可能である。

書式

mpaste [f=] -n -N m=| i= [o=] [-assert_diffSize] [-assert_nullin] [-assert_nullout] [-nfn] [-nfno] [-x] [-q] [tmpPath=] [--help] [--helpl] [--version]

パラメータ

f=

結合する参照ファイル上の項目名リスト(複数項目指定可)。

 

省略するとキー項目を除いた全ての項目が結合される。

m=

参照ファイル名を指定する。

 

このパラメータが省略された時には標準入力が用いられる。(i=指定ありの場合)

-n

入力ファイルにあって参照ファイルにない場合にNULL値を出力する。

-N

参照ファイルにあって入力ファイルにない場合にNULL値を出力する。

利用例

例1: 基本例

$ more dat1.csv
id1
1
2
3
4
$ more ref1.csv
id2
a
b
c
d
$ mpaste m=ref1.csv i=dat1.csv o=rsl1.csv
#END# kgpaste i=dat1.csv m=ref1.csv o=rsl1.csv
$ more rsl1.csv
id1,id2
1,a
2,b
3,c
4,d

例2: 行数が異なる例

入力ファイルと参照ファイルで行数が異なる場合は、少いファイルの行数に合わせる。

$ more ref2.csv
id2
a
b
$ mpaste m=ref2.csv i=dat1.csv o=rsl2.csv
#END# kgpaste i=dat1.csv m=ref2.csv o=rsl2.csv
$ more rsl2.csv
id1,id2
1,a
2,b

例3: 外部結合

-nを指定すると、参照ファイルの行数が少なくても、対応しない入力ファイルの行もNULL値を結合して出力する。

$ mpaste m=ref2.csv -n i=dat1.csv o=rsl3.csv
#END# kgpaste -n i=dat1.csv m=ref2.csv o=rsl3.csv
$ more rsl3.csv
id1,id2
1,a
2,b
3,
4,

例4: 結合項目を指定

$ more ref3.csv
id2,val
a,R0
b,R1
c,R2
d,R3
$ mpaste f=val m=ref3.csv i=dat1.csv o=rsl4.csv
#END# kgpaste f=val i=dat1.csv m=ref3.csv o=rsl4.csv
$ more rsl4.csv
id1,val
1,R0
2,R1
3,R2
4,R3

関連コマンド

mjoin : 行番号でなく、キー項目で結合する。

Previous: mpadding (行補完) コマンド Up: コマンドリファレンス Next: mproduct 参照ファイルの直積結合 MCMD2