par département, faire la moyenne des valeurs, la stocker dans un dictionnaire et faire ensuite un degradé de couleur, faire une fonction qui permet de faire ça sur chaque paramètre
Ce projet vise à analyser la qualité de l'eau couranteen France et son évolution entre 2018 et 2024, en se basant sur divers indicateurs tels que le pH, le chlore, les nitrites, les nitrates, les métaux lourds et les pesticides. L'analyse est réalisée à l'échelle départementale pour fournir une évaluation complète et détaillée de la qualité de l'eau au fil du temps afin d'identifier les tendances et les zones nécessitant une attention particulière pour garantir la sécurité sanitaire des populations locales.
# Lancement de la page
# D’où Vient la Data ?
## Lancer le front :
Les données utilisées pour ce projet proviennent du site [data.gouv.fr](https://www.data.gouv.fr/fr/datasets/resultats-du-controle-sanitaire-de-leau-du-robinet/), la plateforme des données publiques françaises, qui fournit les résultats du contrôle sanitaire de l'eau du robinet. Ces données incluent divers indicateurs de qualité de l'eau, permettant une analyse approfondie de son évolution entre 2018 et 2024.
Pour lancer le front, rentrer la commande suivant dans le dossier frontend :
# Prétraitement de la Data
`npm run dev`
## Etat des Lieux de la Data
## Lancer le back
Pour chaque année, on a récupéré un fichier Zip sur [data.gouv.fr](https://www.data.gouv.fr/fr/datasets/resultats-du-controle-sanitaire-de-leau-du-robinet/) contenant entre autres un fichier csv contenant des informations sur les prélévements de l'année (UDI_PLV : une ligne par prélèvement avec date, lieu, coordonnées, référence du prélèvement, etc) et un autre contenant les resultats de ces prélévements (UDI_RES : une ligne par indicateur testé avec codes des paramètres testés, valeurs pour ces paramètres, référence du prélèvement, etc).
Nous avons donc trouvé sur le site de la [Sandre](https://www.sandre.eaufrance.fr/v2/)(Service d'administration nationale des données et référentiels sur l'eau), une table des correspondances entre les paramètres et leurs codes d'identification (seule information disponible dans les fichiers de data.gouv), afin d'interpréter les codes présents dans les fichers.
Nous nous sommes aussi aperçu que les coordonnées des lieux étant encodées en Lambert 93 et non en GPS,que certaines lignes n'avaient pas de coordonnées et même que certaines lignes avaient leurs coordonnées inversées
Aller dans le dossier backend et rentrer la commande suivante :
## Preprocessing et Choix des Indicateurs
`node index.js`
Pour chaque année, les fichiers de données UDI_RES et UDI_PLV ont donc été chargés et nettoyés, avec normalisation des formats et conversion des valeurs numériques et des coordonnées. Une jointure a été effectuée sur ces fichiers en utilisant la référence commune referenceprel. Les lignes ont été filtrées selon les paramètres/indicateurs qui nous intéressaient. Les coordonnées GPS inversées ont été corrigées et les valeurs manquantes complétées en fusionnant avec les coordonnées des communes. Enfin, les doublons ont été supprimés du fichier final.
Grâce à une analyse de la littérature mais également de la densité nos données, nous avons choisi de concentrer notre étude sur les paramètres/indicateurs suivants :
-**pH**
-**Chlore**
-**Nitrites**
-**Nitrates**
-**Plomb**
-**Nickel**
-**Mercure**
-**Cadmium**
-**Arsenic**
-**Pesticides**
## Table Obtenue
Les tables obtenues (une par année) à la suite de ce prétraitement contiennent alors une ligne par paramètre (sélectionnées selon notre intérêt) par prélèvement, avec, entre autres, la date et la référence du prélèvement, le lieu (département, ville, point de surveillance, coordonnées gps) et la valeur du paramètre ainsi que son unité et son seuil.
# Calcul des Scores de Qualité de l'Eau
Une fois la donnée propre et complète, il est alors possible de passer à une étape cruciale du projet, le calcul d'un score de qualité de l'eau.
Le calcul des scores est effectué ligne par ligne pour chaque point de surveillance (cdpointsurv) et chaque paramètre (cdparametre).
Les valeurs moyennes des paramètres sont calculées annuellement pour chaque point de surveillance (i.e. si il y a eu plusieurs prélèvements au cours de l'année pour le même point de surveillance alors la valeur retournée est la moyenne des valeurs du paramètre au cours de cette année).
Les données sont ensuite pivotées pour obtenir une ligne par point de surveillance avec les valeurs moyennes des paramètres.
Les valeurs manquantes après le pivot sont remplacées par 0 (si un paramètre n'a pas été prélevé cette année, alors on lui donne arbitrairement la valeur 0, dans son unité, comme si l'eau ne contenait aucune trace de ce paramètre).
Les scores pour chaque paramètre sont calculés en utilisant une fonction sigmoïde, avec des pondérations spécifiques pour les nitrites, nitrates, et métaux lourds.
## Indicateurs Utilisés et Seuils réglementaires
Les indicateurs suivants ont été sélectionnés pour évaluer la qualité de l'eau, en se basant sur des seuils réglementaires (ARS et/ou OMS) :
-**pH** : Plage optimale entre 6.5 et 8.5.
-**Chlore** : Seuil à 5.0 mg/L.
-**Nitrites** : Seuil à 0.5 mg/L.
-**Nitrates** : Seuil à 50.0 mg/L.
-**Plomb** : Seuil à 5.0 µg/L.
-**Nickel** : Seuil à 20.0 µg/L.
-**Mercure** : Seuil à 1.0 µg/L.
-**Cadmium** : Seuil à 5.0 µg/L.
-**Arsenic** : Seuil à 10.0 µg/L.
-**Pesticides** : Seuil à 0.5 µg/L.
## Normalisation des Scores
Les valeurs mesurées sont normalisées en utilisant une fonction sigmoïde. Cette approche permet de lisser la transition entre les valeurs et d'obtenir des scores compris entre 0 et 1. La fonction sigmoïde est définie comme suit :
La fonction sigmoïde a été choisie pour sa capacité à transformer les valeurs de manière non linéaire, ce qui permet de mieux refléter les variations autour des seuils critiques. Elle offre une transition douce et évite une gestion binaire des scores (0 ou 1) et surtout d'avoir un score maximal pour une valeur à peine en dessous du seuil et un score minimal pour une valeur à peine au dessus du seuil, reflétant alors mieux la réalité.
## Pondérations des Scores
Un score pour chaque indicateur est donc calculé avant d'être regroupés dans des scores plus généraux. Pour ce faire, nous pondérons les différents scores en fonction de l'importance relative de chaque indicateur pour la qualité globale de l'eau.
# Analyser les scores
Tout d'abord, nous avons regroupé en deux catégories les **Nitrites & Nitrates** et les **Métaux Lourds**.
Les pondérations permettent de mieux refléter l'impact potentiel de chaque élément dans son groupe, les nitrites étant par exemple environ 10 fois plus toxiques que les nitrates, et le mercure étant environ 5 fois plus toxique que le nickel.
-**Nitrites & Nitrates** : Pondération de 10 pour les nitrites et de 1 pour les nitrates.
-**Métaux Lourds** : Pondération de 5 pour le mercure, 4 pour l'arsenic et le cadmium, 3 pour le plomb et 1 pour le nickel.
Ensuite, afin de calculer un score global de qualité de l'eau, nous avons pondérés les différents scores comme suit :
-**pH** : Pondération modérée (1.5).
-**Chlore** : Pondération modérée (1.0).
-**Nitrites & Nitrates** : Pondération élevée (2.0), en tenant compte de la toxicité plus élevée des nitrites.
-**Métaux Lourds** : Pondération très élevée (3.0), en raison de leur toxicité et de leurs effets cumulatifs.
-**Pesticides** : Pondération élevée (2.5).
## Calcul du Score Global
Le score global est ensuite calculé comme une moyenne pondérée des scores de chaque catégories. Cette approche permet de prendre en compte l'importance relative de chaque indicateur tout en fournissant une évaluation globale de la qualité de l'eau.
# Analyser les scores - Revoir l'analyse !
## 📊 **1️⃣ Interprétation des Scores Individuels**
...
...
@@ -31,12 +106,6 @@ Chaque paramètre est noté entre **0 et 1** :