5.15. mcut 項目の選択¶
指定した項目を選択する。
r
オプションを付けると、指定した項目を削除する。
パラメータ¶
i= : 型=str , 任意(default=標準入力)
入力データを指定する。
o= : 型=str , 任意(default=標準出力)
出力データを指定する。
f= : 型=str , 必須
抜き出す項目名項目名をコロンで区切ることで、出力項目名を変更することができる。ex.f=a:A,b:B
r= : 型=bool , 任意(default=False)
項目削除スイッチf=
で指定した項目を削除し、それ以外の項目が抜き出される。
nfni= : 型=bool , 任意(default=False)
入力データの1行目を項目名行とみなさない。よって項目番号で指定しなければならない。以下のように、新項目名を組み合わせて指定することで項目名行を追加出力することが可能となる。例)f=0:日付,2:店,3:数量
共通パラメータ¶
i= , o= , assert_diffSize= , assert_nullin= , nfn= , nfno= , x= , tmppath= , precision=
利用例¶
importと入力データ(CSV)の準備
1import nysol.mcmd as nm 2 3with open('dat1.csv','w') as f: 4 f.write( 5'''customer,quantity,amount 6A,1,10 7A,2,20 8B,1,15 9B,3,10 10B,1,20 11''') 12 13with open('dat2.csv','w') as f: 14 f.write( 15'''A,1,10 16A,2,20 17B,1,15 18B,3,10 19B,1,20 20''')
基本例
customer
と amount
項目を選択する。ただし、 amount
項目は sales
と名前を変更して出力している。
1nm.mcut(f="customer,amount:sales", i="dat1.csv", o="rsl1.csv").run() 2### rsl1.csv の内容 3# customer,sales 4# A,10 5# A,20 6# B,15 7# B,10 8# B,20
項目削除
r=True
を指定することで、項目を削除できる。
1nm.mcut(f="customer,amount", r=True, i="dat1.csv", o="rsl2.csv").run() 2### rsl2.csv の内容 3# quantity 4# 1 5# 2 6# 1 7# 3 8# 1
項目名なしデータ
ヘッダなし入力ファイルから、0,2番目の項目を選択し、
customer
と amount
という名前で出力する。
1nm.mcut(f="0:customer,2:amount", nfni=True, i="dat2.csv", o="rsl3.csv").run() 2### rsl3.csv の内容 3# customer,amount 4# A,10 5# A,20 6# B,15 7# B,10 8# B,20
関連メソッド¶
mfldname 項目名の変更 : 項目名を変更したいだけの場合は
mfldname
を使う。