5.50. mshare 構成比の計算¶
f=
パラメータで指定した項目の構成比を計算し、新しい項目として追加する。
パラメータ¶
i= : 型=str , 任意(default=標準入力)
入力データを指定する。
o= : 型=str , 任意(default=標準出力)
出力データを指定する。
f= : 型=str , 必須
ここで指定された項目(複数項目指定可)の値のシェアが計算される。:(コロン)で新項目名を指定する必要がある。例)f=数量:数量シェア
k= : 型=str , 任意(default=キーブレイク処理しない)
シェア計算の単位となる項目名リスト(複数項目指定可)を指定する。省略すると全行同じキーの値として処理される。
共通パラメータ¶
i= , o= , assert_diffSize= , assert_nullkey= , assert_nullin= , assert_nullout= , nfn= , nfno= , x= , 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''')
基本例
customer
項目を単位に quantity
と amount
項目のシェアを計算し、
「数量シェア」と「金額シェア」という項目名で出力する。
1nm.mshare(k="customer", f="quantity:quantityシェア,amount:amountシェア", i="dat1.csv", o="rsl1.csv").run() 2### rsl1.csv の内容 3# customer%0,quantity,amount,quantityシェア,amountシェア 4# A,1,10,0.3333333333,0.3333333333 5# A,2,20,0.6666666667,0.6666666667 6# B,1,15,0.2,0.3333333333 7# B,3,10,0.6,0.2222222222 8# B,1,20,0.2,0.4444444444