pandasのpivot_tableを用いた高速データ処理
概要
pandasのpivot_tableは強力な機能で、カテゴリごとの集計や計算を高速に行うことができます。
pivot_tableを使った計算で個人的によく使う処理をまとめたものをkaggle のkernelで公開しました。
このkernelでは簡単なダミーデータでpivot_tableに対する計算の仕方をまとめた後、実例としてPLAsTiCC コンペのStarter Kitにあった特徴量の計算をpandasのpivot_tableを用いて高速化しました。
どんなことができるようになるの?
- カテゴリごとに組み込みの集計関数より高度な関数を適用できる
- カテゴリごとの移動平均をかけるようになる
- 未来のデータを含まないmean_encodingがかける
どれくらい早くなるの?
上記のkernelはEDA中に実際に僕が書いたコードに少し修正を加えたものですが、
愚直なコード(1時間以上) → groupbyでの処理(2分半) → pivot_table(4秒)
という感じで早くなりました。
- 前の記事 : シェルスクリプト入門(2)
- 次の記事 : カプランマイヤー曲線について
- 関連記事 :