pythonを用いてExcelの売上データを顧客ごとに集計するコードの説明です。
資料はこちら → Excel(python)その8
p.1 売上データがランダムに配列されている場合に、営業担当者毎にデータを集計するために、営業担当者名を「キー」にする「辞書型」の配列にします。右側をご覧ください。リスト型は、データをカンマで区切って配列にし、取り出す際は最初が0番、以降1、23……の番地を指定して行います。辞書型の場合は、キーと値が一対で配列されているので、取り出す場合はキーを指定します。
p.2 左のコードの最初にダミーデータがあります。営業担当者名をキーにして、売上高と1対1に対応しています。 このデータを上の行から順番に読取り、担当者名をname、売上金をvalueに入れていきます。次にuser(name)にデータを追加します。続いて、担当者毎のデータを集めでrow[1]の金額を合計します。
p.3 前回作成した左上のデータを商店毎の配列に変換後、商店毎の売上金額を合計するコードを次ページに示します。
p.4 今回はメイン部(左上)、顧客毎に分ける部分(左下)、顧客毎の売上を合計する部分(右上)のコードです。昨日までのコードと同様な部分が多いので説明は割愛します。rowを表示させると、顧客毎のデータがまとまって配列していることがわかります。 今回実行した辞書型のデータを「JSON形式」で保存しています。JSON形式については、明日説明します。
def文が3つもあると混乱しますが、Basicのプログラムを経験した方はGo~subルーチンと似ています。別の所で作業したらメインに戻ってくる方法です。言語は違っても、手順は変わらないようです。
本日のコードは → test_dict と split_list
使用するExcelデータ → matome