# Fonction pour comparer les résultats de différentes méthodes de calcul du score, enregistrées en amont.
# Nous a servi à améliorer et affiner notre calcul du score et choisir le plus parlant et cohérent.
# Nous avons choisi de garder le calcul de score basé sur une fonction sigmoïde,
# comme expliqué dans la présentation, il donne des scores plus cohérent en permettant
# une transition douce et évitant une évaluation binaire.


import pandas as pd

dates = ["20" + str(i).zfill(2) for i in range(18, 25)]

for date in dates:
    print(f"Processing data for {date}")
    initial = f"backend/data/water_scores_{date}.csv" 
    new_pond = f"data/new_ponderation_scores_{date}.csv" 
    sigmoid = f"data/sigmoid_scores_{date}.csv" 

    df_initial = pd.read_csv(initial)
    df_new_pond = pd.read_csv(new_pond)
    df_sigmoid = pd.read_csv(sigmoid)

    mean_initial = df_initial['score_global'].mean()
    mean_new_pond = df_new_pond['score_global'].mean()
    mean_sigmoid = df_sigmoid['score_global'].mean()

    print(f"{date} Mean Initial: {mean_initial}, \n Mean New ponderation: {mean_new_pond}, \n Mean Sigmoid: {mean_sigmoid} \n")

    print(f"{date} Initial VS Pond : {mean_initial - mean_new_pond}, \n Initial VS Sigmoid {mean_initial - mean_sigmoid} \n, Pond VS Sigmoid : {mean_new_pond - mean_sigmoid} \n")