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
periodsi l’auto-détection est incertaine.