大阪大学医学部 Python会

Now is better than never.

pandasのpivot_tableを用いた高速データ処理

2018-11-17(Sat) - Posted by 金子 in 技術ブログ    tag:Data Science Competition

Contents

    概要

    pandasのpivot_tableは強力な機能で、カテゴリごとの集計や計算を高速に行うことができます。

    pivot_tableを使った計算で個人的によく使う処理をまとめたものをkaggle のkernelで公開しました。

    1

    このkernelでは簡単なダミーデータでpivot_tableに対する計算の仕方をまとめた後、実例としてPLAsTiCC コンペStarter Kitにあった特徴量の計算をpandasのpivot_tableを用いて高速化しました。

    どんなことができるようになるの?

    • カテゴリごとに組み込みの集計関数より高度な関数を適用できる
    • カテゴリごとの移動平均をかけるようになる
    • 未来のデータを含まないmean_encodingがかける

    どれくらい早くなるの?

    上記のkernelはEDA中に実際に僕が書いたコードに少し修正を加えたものですが、

    愚直なコード(1時間以上) → groupbyでの処理(2分半) → pivot_table(4秒)

    という感じで早くなりました。