0Pricing
Learn AI with Python · Leçon

Séries temporelles dans Pandas

DatetimeIndex, resample(), rolling(), shift(), génération de plages de dates et rééchantillonnage.

Séries temporelles dans Pandas est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.

Le temps dans pandas

pandas prend en charge les dates et heures nativement. Convertir des chaînes en horodatages et indexer selon le temps permet d’utiliser le rééchantillonnage, les fenêtres glissantes et les caractéristiques de décalage.

Analyser avec to_datetime

pd.to_datetime convertit des chaînes ou des nombres en objets Timestamp appropriés, en détectant automatiquement la plupart des formats courants.

import pandas as pd
d = pd.to_datetime(["2026-01-01", "2026-01-05", "2026-02-10"])
print(d)
print(d.dtype)   # datetime64[ns]

Générer des dates avec date_range

pd.date_range construit une séquence d’horodatages régulièrement espacés. Le code freq contrôle le pas : D pour les jours, H pour les heures, M pour la fin du mois, etc.

rng = pd.date_range("2026-01-01", periods=5, freq="D")
print(rng)
# 2026-01-01 ... 2026-01-05

Créer un DatetimeIndex

Définir une colonne de dates et heures comme index crée un DatetimeIndex, qui permet le découpage tenant compte du temps ainsi que l’utilisation des outils resample et rolling.

ts = pd.Series([10, 12, 9, 15, 11],
               index=pd.date_range("2026-01-01", periods=5, freq="D"))
print(ts)

Découpage par chaîne partielle

Avec un DatetimeIndex, vous pouvez découper les données à partir de dates partielles : une chaîne représentant une année ou un mois sélectionne toutes les lignes correspondantes.

monthly = pd.Series(range(60),
    index=pd.date_range("2026-01-01", periods=60, freq="D"))
print(monthly["2026-02"].head())   # all of February

Rééchantillonner avec resample

resample est l’équivalent de groupby pour le temps. Rééchantillonnez à une fréquence plus grossière, puis agrégez, par exemple en transformant des données quotidiennes en sommes hebdomadaires.

weekly = monthly.resample("W").sum()
print(weekly.head())

Suréchantillonnage et remplissage

Rééchantillonner à une fréquence FINER crée des valeurs manquantes. Combinez cette opération avec .ffill() pour propager la dernière valeur vers l’avant.

hourly = ts.resample("12H").ffill()
print(hourly.head())

Fenêtres glissantes

rolling(window) calcule une statistique sur une fenêtre glissante, à la base des moyennes mobiles qui lissent les séries bruitées.

roll = monthly.rolling(window=7).mean()
print(roll.head(10))   # first 6 are NaN (not enough history)

Variantes des fenêtres glissantes

Toute réduction fonctionne sur une fenêtre glissante : mean, sum, std, min, max. Un std glissant sur 7 jours mesure la volatilité récente.

vol = monthly.rolling(7).std()
print(vol.tail())

Créer des décalages avec shift

shift(n) décale les valeurs de n périodes vers l’avant, ce qui crée des caractéristiques de décalage et permet de calculer les variations d’une période à l’autre.

df = pd.DataFrame({"sales": [100, 110, 105, 130]})
df["prev"] = df["sales"].shift(1)
df["pct_change"] = (df["sales"] - df["prev"]) / df["prev"]
print(df)

Extraire les composantes de date

L’accesseur .dt expose des composantes telles que l’année, le mois et le jour de la semaine, qui sont utiles comme caractéristiques de modèle.

s = pd.Series(pd.date_range("2026-01-01", periods=3, freq="D"))
print(s.dt.dayofweek)   # 0=Monday
print(s.dt.month)

Vérification rapide

Testez vos connaissances sur les séries temporelles.

Récapitulatif

Boîte à outils des séries temporelles :

  • pd.to_datetime pour analyser, pd.date_range pour générer
  • Un DatetimeIndex permet le découpage par chaîne partielle
  • resample(freq).agg() pour le suréchantillonnage et le sous-échantillonnage
  • rolling(window) pour les statistiques mobiles
  • shift(n) pour les décalages ; .dt pour les composantes de date

Questions Fréquemment Posées

La leçon « Séries temporelles dans Pandas » est-elle gratuite ?

Oui — le texte complet de « Séries temporelles dans Pandas » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Séries temporelles dans Pandas » ?

DatetimeIndex, resample(), rolling(), shift(), génération de plages de dates et rééchantillonnage. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Learn AI with Python ?

Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Séries temporelles dans Pandas » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?

Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. GroupBy et agrégation
  2. Tableaux croisés dynamiques et tableaux de contingence
  3. Fusion et jointure avancées
  4. Séries temporelles dans Pandas
← Retour à Learn AI with Python