← retour aux snippets

pandas: rolling fenêtre temporelle

Rolling basé sur durée (ex: 2H) plutôt que taille fixe.

objectif

Rolling basé sur durée (ex: 2H) plutôt que taille fixe.

code minimal

import pandas as pd
idx = pd.date_range("2025-01-01", periods=5, freq="H")
s = pd.Series([1,2,3,4,5], index=idx)
print(s.rolling("2H").sum().tolist())

utilisation

import pandas as pd
idx = pd.date_range("2025-01-01", periods=4, freq="30min")
s = pd.Series([1,1,1,1], index=idx)
print(s.rolling("1H").count().tolist())

variante(s) utile(s)

import pandas as pd
idx = pd.date_range("2025-01-01", periods=4, freq="H")
s = pd.Series([1,2,3,4], index=idx)
print(s.rolling("2H", closed="both").mean().tolist())

notes

  • Index datetime requis; attention aux bords (closed).