時系列データ分析で便利なPandasのgroupbyの使い方

▼この記事をSNSでシェアする▼

スポンサーリンク

スポンサーリンク

今流行りのデータサイエンス

pandasでCSVを読み込み、PandasのDataFrameをつかって・・・なんてひとが多いのではないでしょうか。

時系列のデータを扱うときに便利なPandasの使い方を実例を交えて備忘録として残しておきます

準備

環境について

Anacondaを仮想環境にインポートしてjupyter notebookを開いて実行するのがお手軽だと思います。

環境構築については下の記事が参考になるかと思います。

今回は10年分の毎日の降水量のデータを例に進めます。

以下のリンクからデータは簡単にCSV形式で入手できます。

https://www.data.jma.go.jp/gmd/risk/obsdl/index.php

データ整形

今回使うのは、日付と降水量の二つのデータのみです。

気象庁のデータを落としたデータはこんな感じ

ただyyyy/mm/ddの形式のデータだとpandasで年ごとや月ごとのなどのデータが扱いにくいので、年・月・日に分けます。あとは上の方の行が不要なので取り除く、整形後のカラム名をヘッダーに設定します。

GroupBy

日次のデータだけど、月次・年次で集計して統計量を算出したい。グラフにしたい。

カテゴリ別で整形したい

そんなときに GroupByメソッドが便利です。

下記のような形式で集計できます。

メソッド

  • mean():平均値
  • sum():合計値
  • min():最小値
  • max():最大値
  • std():標準偏差
  • var():分散

実際に使用するとこんな感じ

これで年別でデータを集計できます。

複数カラムでの集計

上では「年」というカラムのみでグループ化しましたが、複数のカラムで集計することも可能です。

基準のカラムの部分をリスト型で書くことで複数指定可能です。

これを使うと、上の降水量のデータを特定の月ごとに扱うことができます。

メソッドを試した所感

今回のGroupByがDataFrameを扱う上で結構重要だなと思いました。

CSVデータを直接いじるのはできるだけしたくないし、使えたほうがいい気がしました。

次の記事では時系列のデータをMatplotlibで表示する方法をまとめました。

こちらも同じくらい有用なので知らない方はぜひ見てみるといいです。

スポンサーリンク


関連記事

▼この記事をSNSでシェアする▼

フォローする

メニュー・主な記事カテゴリ

おすすめ特集!




「ゆとり鳥日記」について
ITを中心に関心の赴くままに好きなように書いていく雑記ブログ!管理人が二人います。
◆フクロウ(19卒就活生)
◆トンビ(社会人1年目SE)

詳しいプロフィール
お仕事の依頼・ご要望

ゆとり鳥日記をBTCで応援する