読者です 読者をやめる 読者になる 読者になる

あれもPython,これもPython

Pythonで世界を包みたい

Pythonで探索的データ分析したいのでpivottablejsを使う

Python勉強記(モジュール毎)

Pythonのデータ分析は、pandasやnumpyのおかげで大変快適です。

しかしそうは言っても、コード書くほどじゃないんだよなあとか、
まだデータ全然わかんねえんだよなーという時があります。

そんなときに便利なモジュールがpivottablejsです。
というわけで、まずは動画を御覧ください。

pivottablejs

pivottable.jsはもともとjavascriptのパッケージです。
インタラクティブにデータを可視化したり、集計することが可能になります。
(人と相談したりしながらの操作も楽ですね!)

pythonではpivottablejsというモジュールを導入することで、
これが使用することが可能になります。

使い方

pip install pivottablejs

で、導入。

IPython notebook上で、

import pandas as pd
from pivottablejs import pivot_ui

df = pd.read_csv(読み込むデータ)
pivot_ui(df)

あとはぐりぐり動かすだけです。

出来ること

データの選択

まず、ドラッグアンドドロップで縦軸、横軸に使用するデータが選べます。
同じ軸に複数のデータを置くと、階層化が可能です。

また、データをクリックすることで、簡易的にフィルターをかけることも可能です。

データの表示方法

左上のボタンを押すと、データの表示方法を選択することが可能です。
集計テーブルや、ヒートマップ、折れ線グラフ、散布図など基本的な表示方法を選ぶことが出来ます。

選べる表示方法

  • TABLE
  • TABLE BAR chart
  • heatmap
  • row heatmap
  • col heatmap
  • linechart
  • barchart
  • stack barchart
  • area chart
  • scatter chart
  • treemap

データの種類

表の左上のボタンを押すと、データの種類を選ぶことができます。
単純なデータの個数や、平均値、最大値などを選択可能です。

この時、平均値や最大値などを選択すると、
その下にさらにデータを選択するボタンが現れます。
これで、どのデータの平均値を使用するか決められます。

選べるデータの種類

  • count
  • count unique values
  • list unique values
  • sum
  • integer sum
  • average
  • minimun
  • maximum
  • sum over sum
  • 80% upper bound
  • 80% Lower Bound
  • Sum as Fraction of total
  • Sum as Fractions of Rows
  • Sum as Fractions of Cols
  • counts as fractions of total
  • counts as fractions of rows
  • counts as fractions of columns

まとめ

これだと、コードをあまり書かずに、
データを見ることができて便利です。

ただし、加工のプロセスに再現性を持たせられないので、
そこは記録をとって、
後でコードにしたほうが良いですね。