5.50. mshare 構成比の計算

f= パラメータで指定した項目の構成比を計算し、新しい項目として追加する。

パラメータ

i= : 型=str , 任意(default=標準入力)

入力データを指定する。

o= : 型=str , 任意(default=標準出力)

出力データを指定する。

f= : 型=str , 必須

ここで指定された項目(複数項目指定可)の値のシェアが計算される。
:(コロン)で新項目名を指定する必要がある。例)f=数量:数量シェア

k= : 型=str , 任意(default=キーブレイク処理しない)

シェア計算の単位となる項目名リスト(複数項目指定可)を指定する。
省略すると全行同じキーの値として処理される。

利用例

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 項目を単位に quantityamount 項目のシェアを計算し、 「数量シェア」と「金額シェア」という項目名で出力する。

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

関連メソッド