##1. Jupyter内でインタラクティブに集計したい
linux環境でJupyterを動かしていて、データを探索的に集計したいときにデータをcsvに出力してローカルのExcelでPivotを使うのは結構面倒なので、できるだけJupyter内でやりたい
調べてみると、pivottablejsを使えばいいと分かった
そもそもライブラリ名にあるように内部的にはJavascriptで動いているっぽいが、pipで入れると
Jupyterで使えるっぽい
##2. pivottalbejsを入れる
まずはpipで入れる
pip install pivottablejs
pip install jupyter #jupyterが入ってなければ
pip install seaborn #サンプルデータを使いたいので
##3. pivottablejsをJupyterで使う
問題なく入れば、Jupyterを開いて適当にどんな感じか見てみる
import pivottablejs
import seaborn
df_titanic = seaborn.load_dataset("titanic")
pivottablejs.pivot_ui(df_titanic)
pivot_ui(DataFrame)のメソッドで起動する
出力セルにpivottableが出てくる。これで集計できるっぽい
試しに、タイタニックの生存/死亡を親に対する子供の割合別に集計してみる
おぉ!!簡単にドラッグ&ドロップでできる!!
基本的には、公式でどんな機能があるかを確認した方がいいけど、備忘録も兼ねて使える機能を整理しておく
機能 | 概要 |
---|---|
Table | 通常のテーブル |
TableBarchart | セル内に棒グラフが表示される |
Heatmap | ヒートマップ |
Row Heatmap | 行基準でヒートマップ |
Col Heatmap | 列基準でヒートマップ |
Line chart | 線グラフ |
Bar chart | 棒グラフ |
Stacked Bar chart | 積み上げ棒グラフ |
Area chart | 面グラフ |
Scatter chart | 散布図 |
Treemap | Treemap |
Export tsv | Tsv形式の出力 |
おしまい