pandasでピボットテーブル
pandasのデータフレーム型でピボットテーブルを作る方法です
df.pivot_table(values="集計したい列(値)", index="分類する列(キー)", aggfunc="集計方法")
でピボットテーブルを作ることができます。
例えば下記のようなDataFrameがあった場合、
UID | 診療科 |
---|---|
1 | 一般内科 |
2 | 外科 |
3 | 精神科 |
4 | 一般内科 |
5 | 精神科 |
6 | 一般内科 |
7 | 一般内科 |
df.pivot_table(values="UID", index="診療科", aggfunc="count").sort_values(by='UID', ascending=False)
UID | |
---|---|
診療科 | |
一般内科 | 4 |
精神科 | 2 |
外科 | 1 |
となるはず。
pandasで日付データ(str)をdatetime型に変換する
データ読み込み時に指定すれば良いのですが、良く忘れて読み込むのでメモ。
列ごとデータタイプをdatetime型に変更します。
import pandas as pd data = {"ID": ["hoge", "geho", "hogehoge"], "watch_time": ["00:21:00", "01:24:01", "02:02:34"]} df = pd.DataFrame(data) df["watch_time"] = pd.to_datetime(df["watch_time"])