Spaces:
Running
Running
import pandas as pd | |
import numpy as np | |
def apply_scenarios(data, taux_directeur_change, pib_change, m2_change): | |
""" | |
Applique les scénarios de modification des variables macroéconomiques | |
""" | |
modified_data = data.copy() | |
modified_data['Taux directeur'] = modified_data['Taux directeur'] * (1 + taux_directeur_change/100) | |
modified_data['Taux de croissance du PIB'] = modified_data['Taux de croissance du PIB'] * (1 + pib_change/100) | |
modified_data['Masse monétaire M2'] = modified_data['Masse monétaire M2'] * (1 + m2_change/100) | |
return modified_data | |
def calculate_metrics(y_true, y_pred): | |
""" | |
Calcule les métriques d'évaluation du modèle | |
""" | |
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score | |
mae = mean_absolute_error(y_true, y_pred) | |
rmse = np.sqrt(mean_squared_error(y_true, y_pred)) | |
r2 = r2_score(y_true, y_pred) | |
return { | |
'mae': mae, | |
'rmse': rmse, | |
'r2': r2 | |
} | |
def prepare_prediction_results(dates, y_true, y_pred): | |
""" | |
Prépare les résultats de prédiction pour l'affichage | |
""" | |
results = pd.DataFrame({ | |
'Date': dates, | |
'Inflation réelle': y_true, | |
'Inflation prédite': y_pred | |
}) | |
return results |