← retour aux snippets

statsmodels: seasonal_decompose

Décomposer série en tendance, saisonnalité, résidus.

objectif

Décomposer série en tendance, saisonnalité, résidus.

code minimal

import numpy as np, pandas as pd
from statsmodels.tsa.seasonal import seasonal_decompose

idx = pd.date_range("2024-01-01", periods=48, freq="H")
y = pd.Series(np.sin(np.arange(48)/24*2*np.pi) + 0.1*np.random.default_rng(0).normal(size=48), index=idx)
res = seasonal_decompose(y, model="additive", period=24)
print(len(res.observed) == len(y))

utilisation

print(res.seasonal.iloc[:3].round(2).tolist())

variante(s) utile(s)

# seasonal_decompose(y, model="multiplicative", period=7)
print("ok")

notes

  • Fixer period si l’auto-détection est incertaine.