2
2

More than 1 year has passed since last update.

Python Pandasのresample関数を使ったcsvデータの集計

Last updated at Posted at 2022-06-25

今回はPandasライブラリのresample関数を使って厚生労働省が提供している日次のPCR検査実施人数のオープンデータ(csvファイル)を月次集計してみます。

流れは、次の通りです。

  • 1. 厚生労働省からオープンデータPCR検査実施人数を取得
  • 2. 入手したデータファイルをUnixデータ形式に変換
  • 3. PythonでPandasのresample関数を使って月次集計。集計結果はcsv形式で出力する。
  • 4.実行する
  • 5.集計結果を確認する

では実際にやっていきます。

1. 厚生労働省からオープンデータPCR検査実施人数を取得

下記サイトからファイル名pcr_tested_daily.csvをダウンロードします。
https://www.mhlw.go.jp/content/pcr_tested_daily.csv

  • pcr_tested_daily.csv
    スクリーンショット 2022-06-25 10.19.02.png

2. 入手したcsvファイルをUnixデータ形式に変換

$ unix2dos pcr_tested_daily.csv

3. PythonでPandasのresample関数を使って月次集計

下記用意したPythonコードです。

■ファイル名: resample.py

resample.py
import pandas as pd  # Pandasライブラリを読み込む

# ファイル名pcr_case_daily.csvをカンマ区切りで読み込む
df = pd.read_csv('./pcr_case_daily.csv',sep=',' ,index_col=0 ,parse_dates=True)

# resample関数で月次集計する。月初から月末までデータサンプリングして合計値を出す。
df_resample = df.resample('M').sum()  

# 結果をcsvファイル名output.csvに出力する
df_resample.to_csv('output.csv')

4. 実行する

python3 resample.py

実行後output.csvが出力された。

ls -lh output.csv
-rw-rw-r-- 1 ishimatsu ishimatsu 2.2K  6月 22 13:44 output.csv

5. 集計結果を確認

結果ファイルを開き、月次集計されていることがわかりました。
集計が月次になり、日付は毎月月末になります。
スクリーンショット 2022-06-25 10.20.39.png

以上になります。

Pandasのresample関数を使うことに容易に日次集計を月次集計できました。
resample関数は月次集計でなく多様な集計に対応しています。
下記参考にさせていただいたサイト(YutaKaのPython教室)には詳細な使用方法が書かれていますので、ご利用される場合にはぜひご参照ください。

■ 参照させていただいたサイト

YutaKaのPython教室
https://www.yutaka-note.com/entry/pandas_resample

2
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2