5.48. msep レコードの分割¶
d=
パラメータで指定したデータのデータに各レコードを出力する。
指定するデータに項目名を埋め込むことができるので、結果としてレコード分割することになる。
埋め込むデータは ${項目名}
によって指定する。
例えば、 d=./out/${date}.csv
と指定すれば、カレントディレクトリの下の out
ディレクトリの下に、
date
項目の値別にデータが作成されることになる。
内部的には、埋め込んだ項目の値をキーとして認識し、並べ替えが行われた後レコードが分割される。
パラメータ¶
i= : 型=str , 任意(default=標準入力)
入力データを指定する。
d= : 型=str , 必須
異なるデータデータに分割する項目名を指定する。ここで指定した文字列をデータとして各レコードが追記されていく。項目名は${項目名}
によって埋め込む。
f= : 型=str , 任意(default=)
出力する項目名を指定する。
p= : 型=bool , 任意(default=False)
d=
パラメータで指定したディレクトリ名が存在しなければ作成する。
共通パラメータ¶
i= , assert_nullin= , nfn= , nfno= , x= , q= , tmppath= , precision=
利用例¶
importと入力データ(CSV)の準備
1import nysol.mcmd as nm 2 3with open('dat1.csv','w') as f: 4 f.write( 5'''item,date,quantity,price 6A,20081201,1,10 7B,20081201,4,40 8A,20081202,2,20 9A,20081203,3,30 10B,20081203,5,50 11''')
基本例
dat
という名前のディレクトリを作成し、
そのディレクトリに日付項目値 date
ごとに異なるファイルに出力する。
1nm.msep(d="./dat/${date}.csv", p=True, i="dat1.csv").run() 2### の内容