スポンサーリンク

pandasのDataFrameでマルチインデックスにして年毎の操作をする

インデックスをdatetime型にしてDataFrameを作成

まずは、インデックスをdatetime型にしてDataFrameを作成します。
参考:pandas.read_csv()のindex_colの指定とparse_dates=Trueで、インデックスの列をdatetime型に変換

スポンサーリンク

DataFrame.set_index()でyearをインデックスに追加設定する

DataFrame.set_index()でyearをインデックスに追加設定して、マルチインデックスにします。

マルチインデックスしたインデックス名を整理

上記のままだと、年のインデックス名が”Date”となっているので、下記のように年と日付のインデックス名を設定します。

sort_index()で、必要に応じて年をキーにソート

sort_index()で、必要に応じて年をキーにソートします。

年毎の総和を出力

あとは、それぞれのメソッドを使って処理するだけです。
sum()で年毎の総和を求めます。

年毎の平均を出力

mean()で年毎の平均を求めます。

年毎の最大値を出力

max()で年毎の最大値を求めます。

年毎の最小値を出力

min()で年毎の最小値を求めます。

サンプルコード

サンプルコードになります。
下記のように、in.txtがあったとします。

下記がサンプルコードになります。

下記が実行結果になります。年毎の総和・平均・最大値・最小値が一覧できるのが確認できます。

スポンサーリンク