Syntaxe Prophet pour les variables exogènes

Bonjour, dans le cadre de mon projet, je recherche la syntaxe permettant d’entrer dans Prophet une variable exogène. Cordialement.

On n’est jamais mieux servi que par soi-même ; si ça peut servir à quelqu’un :


# Problématique ; on veut prédire la consommation selon le temps (à la journée) en s'aidant 
# d'une variable exogène (la température)

# Mise au format PROPHET de ts_13_22_deb (la consommation, variable à prédire)
df_deb["ds"] = df_deb.index # la consommation passée ; index en datetime
df_deb["y"]= df_deb["Consommation (MW)"]

# Mise au format de la variable exogène "température"
temp_deb = pd.DataFrame(temp_deb) # les températures passées
temp_fin = pd.DataFrame(temp_fin) # les prévisions de température sur la période à prédire
temp_deb['ds'] = temp_deb.index # index en datetime
temp_deb['y'] = temp_deb["Température"]
temp_fin['ds'] = temp_fin.index
temp_fin['y'] = temp_fin["Température"]

# Ajout de Température à df_deb (température et consommation doivent être dans le même df
df_deb["Température"]= temp_deb["Température"]

# Entraînement de Prophet avec la Température en variable exogène
m = Prophet()
m.add_regressor('Température')
m.fit(df_deb)

# Définition de la fonction permettant la prise en compte au bon format des futures valeurs de # # la températures en variable exogène :
def weather_temp(ds):  # OK ?
    date = (pd.to_datetime(ds)).date()

    if df_deb[date:].empty:
        return temp_fin[date:]['Température'].values[0]
    else:
        return (df_deb[date:]['Température']).values[0]

    return 0

# Prédiction
future = m.make_future_dataframe(periods=14) # OK ?
future['Température'] = future['ds'].apply(weather_temp)
pred_prox_9_14 = m.predict(future)

# La variable exogène apporte des améliorations dans la prédiction à 14 jours

:slightly_smiling_face: