Pandas におけるウィンドウ操作

Beginner

This tutorial is from open-source community. Access the source code

はじめに

この実験では、pandas のウィンドウ操作、つまりローリングウィンドウ、拡張ウィンドウ、指数加重ウィンドウについて学びます。ウィンドウ操作は、値のスライドするパーティションに対して集約を行う際に便利です。

VM のヒント

VM の起動が完了したら、左上隅をクリックして ノートブック タブに切り替え、Jupyter Notebook を使って練習しましょう。

Jupyter Notebook の読み込みには数秒かかる場合があります。Jupyter Notebook の制限により、操作の検証は自動化できません。

学習中に問題がある場合は、Labby にお問い合わせください。セッション終了後にフィードバックを提供してください。すぐに問題を解決いたします。

pandas の Series を作成する

0 から 4 までの値の範囲を持つ pandas の Series を作成します。

import pandas as pd

## 0 から 4 までの値の範囲を持つ pandas の Series を作成する
s = pd.Series(range(5))

ローリングウィンドウ操作を行う

ウィンドウサイズが 2 のローリングウィンドウ操作を行い、その後、各ウィンドウの合計を計算します。

## ウィンドウサイズが 2 のローリングウィンドウ操作を行い、各ウィンドウの合計を計算する
s.rolling(window=2).sum()

拡張ウィンドウ操作を行う

拡張ウィンドウ操作を行い、その後、各ウィンドウの合計を計算します。

## 拡張ウィンドウ操作を行い、各ウィンドウの合計を計算する
s.expanding(min_periods=1).sum()

指数加重ウィンドウ操作を行う

指数加重ウィンドウ操作を行い、その後、各ウィンドウの平均を計算します。

## 指数加重ウィンドウ操作を行い、各ウィンドウの平均を計算する
s.ewm(span=3).mean()

まとめ

この実験では、pandas を使用して、ローリングウィンドウ、拡張ウィンドウ、指数加重ウィンドウなど、様々なウィンドウ操作を行いました。これらの操作は、値のスライドするパーティションに対して集約を行う際に役立ちます。