Calculer-les-EQR-hydrobiologiques

library(tools4DCE)

Ce document explique comment télécharger des indices hydrobiologiques depuis Hubeau, convertir IBD et IBMR en EQR, affecter une classe de qualité aux résultats selon la typologie des stations de mesures.

Chargement de donnees hydrobiologiques depuis Hubeau

A partir de la plateforme Hubeau, on télécharge les données hydrobiologiques disponibles sur la station 04207400.

donnees<-import_hubeau_indices_hbio(liste_stations = c("04207400"))
str(donnees)
## 'data.frame':    211 obs. of  40 variables:
##  $ CdParametre               : chr  "1000" "1000" "1000" "1000" ...
##  $ NomParametre              : chr  "Indice Biologique Global Normalisé (I.B.G.N.)" "Indice Biologique Global Normalisé (I.B.G.N.)" "Indice Biologique Global Normalisé (I.B.G.N.)" "Indice Biologique Global Normalisé (I.B.G.N.)" ...
##  $ CdStationMesureEauxSurface: chr  "04207400" "04207400" "04207400" "04207400" ...
##  $ libelle_station_hydrobio  : chr  "FLUME à PACE" "FLUME à PACE" "FLUME à PACE" "FLUME à PACE" ...
##  $ uri_station_hydrobio      : logi  NA NA NA NA NA NA ...
##  $ date_prelevement          : chr  "2000-07-18T00:00:00Z" "2001-09-04T00:00:00Z" "2002-08-21T00:00:00Z" "2004-07-16T00:00:00Z" ...
##  $ RsAna                     : num  14 14 15 12 14 18 28 27 29 20 ...
##  $ CdUniteMesure             : chr  "X" "X" "X" "X" ...
##  $ coordonnee_x              : num  344948 344948 344948 344948 344948 ...
##  $ coordonnee_y              : num  6797470 6797470 6797470 6797470 6797470 ...
##  $ code_projection           : chr  "2154" "2154" "2154" "2154" ...
##  $ code_cours_eau            : chr  "J7214000" "J7214000" "J7214000" "J7214000" ...
##  $ libelle_cours_eau         : logi  NA NA NA NA NA NA ...
##  $ uri_cours_eau             : logi  NA NA NA NA NA NA ...
##  $ code_masse_eau            : chr  "GR0112" "GR0112" "GR0112" "GR0112" ...
##  $ libelle_masse_eau         : logi  NA NA NA NA NA NA ...
##  $ uri_masse_eau             : logi  NA NA NA NA NA NA ...
##  $ code_sous_bassin          : logi  NA NA NA NA NA NA ...
##  $ libelle_sous_bassin       : logi  NA NA NA NA NA NA ...
##  $ code_bassin               : logi  NA NA NA NA NA NA ...
##  $ libelle_bassin            : logi  NA NA NA NA NA NA ...
##  $ code_commune              : chr  "35210" "35210" "35210" "35210" ...
##  $ libelle_commune           : chr  "Pacé" "Pacé" "Pacé" "Pacé" ...
##  $ code_departement          : chr  "35" "35" "35" "35" ...
##  $ libelle_departement       : chr  "Ille-et-Vilaine" "Ille-et-Vilaine" "Ille-et-Vilaine" "Ille-et-Vilaine" ...
##  $ code_region               : chr  "53" "53" "53" "53" ...
##  $ libelle_region            : chr  "Bretagne" "Bretagne" "Bretagne" "Bretagne" ...
##  $ CdSupport                 : chr  "13" "13" "13" "13" ...
##  $ libelle_support           : chr  "Macroinvertébrés aquatiques" "Macroinvertébrés aquatiques" "Macroinvertébrés aquatiques" "Macroinvertébrés aquatiques" ...
##  $ CdQualAna                 : chr  "1" "1" "1" "1" ...
##  $ libelle_qualification     : chr  "correcte" "correcte" "correcte" "correcte" ...
##  $ CdMethode                 : chr  "0" "0" "0" "0" ...
##  $ libelle_methode           : chr  "Méthode inconnue" "Méthode inconnue" "Méthode inconnue" "Méthode inconnue" ...
##  $ libelle_accreditation     : chr  "Inconnu" "Inconnu" "Inconnu" "Inconnu" ...
##  $ latitude                  : logi  NA NA NA NA NA NA ...
##  $ longitude                 : logi  NA NA NA NA NA NA ...
##  $ geometry                  : logi  NA NA NA NA NA NA ...
##  $ DatePrel                  : Date, format: "2000-07-18" "2001-09-04" ...
##  $ HeurePrel                 : chr  "00:00:00" "00:00:00" "00:00:00" "00:00:00" ...
##  $ CdAccreAna                : chr  "0" "0" "0" "0" ...

Conversion des notes IBD et IBMR en EQR

Le package tools4DCE fournit une table avec les paramètres nécessaires au calcul des EQR selon la typologie de cours d’eau, conformément à l’arrêté ministériel du 25 janvier 2010 modifié.

str(base_ref_eqr)
## tibble [456 x 6] (S3: tbl_df/tbl/data.frame)
##  $ NOM_INDICE    : chr [1:456] "IBD" "IBD" "IBD" "IBD" ...
##  $ CdParametre   : chr [1:456] "5856" "5856" "5856" "5856" ...
##  $ TYPEFR        : Factor w/ 163 levels "G1","G10","G10/21",..: 1 3 4 5 121 121 6 7 9 10 ...
##  $ NOTE_REFERENCE: num [1:456] 20 19 19 19 17.4 17.4 17.4 17.4 20 18.1 ...
##  $ NOTE_MINI     : num [1:456] 5 5 5 5 1 1 1 1 5 1 ...
##  $ SPECIFICITE   : chr [1:456] "CAS_GENERAL" "CAS_GENERAL" "CAS_GENERAL" "CAS_GENERAL" ...

Calcul des EQR

Le package contient une fonction pour calculer les EQR.

donnees_IBD<-donnees%>%subset(CdParametre=="5856" & !is.na(RsAna))
donnees_IBD$EQR<-sapply(donnees_IBD$RsAna, function(x){calcule_EQR_hbio(x, CdParametre='5856', typologie="P12-A")})

Graphique des résultats

Le package permet de mettre facilement les résultats sous forme graphique

Création d’un seuil qualité :

seuil_IBD<-makeSeuils(CdParametre = "5856", type_seuil = "DCE", specificites = "<10000 km2")
graphDCE_points(donnees_IBD, col_valeurs = "EQR", seuils=seuil_IBD, ymini=0, ymaxi=1) + ylab("EQR")

Calcul de la classe de qualité correspondant à chaque résultat

Il permet également d’affecter une classe de qualité à chaque résultat.

Création d’un seuil qualité :

donnees_IBD$CLASSE<-sapply(donnees_IBD$EQR, function(x){affecte_une_classe(x, seuil_IBD)})

Chargement des listes floristiques depus Hubeau et recalcule de l’IBD via le SEEE

Import des listes floristiques

liste_flo<-import_hubeau_liste_hbio(liste_stations = "04195400", indice="dia")
str(head(liste_flo, 3))
## 'data.frame':    3 obs. of  45 variables:
##  $ code_station_hydrobio    : chr  "04195400" "04195400" "04195400"
##  $ libelle_station_hydrobio : chr  "OUST à SAINT-MARTIN-DES-PRES" "OUST à SAINT-MARTIN-DES-PRES" "OUST à SAINT-MARTIN-DES-PRES"
##  $ uri_station_hydrobio     : logi  NA NA NA
##  $ date_prelevement         : Date, format: "2007-09-05" "2008-08-26" ...
##  $ code_support             : chr  "10" "10" "10"
##  $ libelle_support          : chr  "Diatomées benthiques" "Diatomées benthiques" "Diatomées benthiques"
##  $ code_appel_taxon         : chr  NA NA NA
##  $ libelle_appel_taxon      : chr  NA NA NA
##  $ codes_taxons_parents     :List of 3
##   ..$ : NULL
##   ..$ : NULL
##   ..$ : NULL
##  $ libelles_taxons_parents  :List of 3
##   ..$ : NULL
##   ..$ : NULL
##   ..$ : NULL
##  $ code_type_resultat       : chr  NA NA NA
##  $ libelle_type_resultat    : chr  NA NA NA
##  $ resultat_taxon           : num  NA NA NA
##  $ code_qualification       : chr  "1" "1" "1"
##  $ libelle_qualification    : chr  "correcte" "correcte" "correcte"
##  $ code_methode             : chr  "0" "0" "0"
##  $ libelle_methode          : chr  "Méthode inconnue" "Méthode inconnue" "Méthode inconnue"
##  $ libelle_liste_faune_flore: chr  NA NA NA
##  $ code_lot                 : logi  NA NA NA
##  $ hauteur_moyenne_lame_eau : logi  NA NA NA
##  $ largeur_moyenne_lame_eau : num  NA NA 0
##  $ longueur_prospectee      : num  NA NA 0
##  $ codes_indices_operation  :List of 3
##   ..$ : NULL
##   ..$ : NULL
##   ..$ : NULL
##  $ coordonnee_x             : num  258244 258244 258244
##  $ coordonnee_y             : num  6819140 6819140 6819140
##  $ code_projection          : chr  "2154" "2154" "2154"
##  $ code_cours_eau           : chr  "J8--0230" "J8--0230" "J8--0230"
##  $ libelle_cours_eau        : logi  NA NA NA
##  $ uri_cours_eau            : logi  NA NA NA
##  $ code_masse_eau           : chr  "GR0126A" "GR0126A" "GR0126A"
##  $ libelle_masse_eau        : logi  NA NA NA
##  $ uri_masse_eau            : logi  NA NA NA
##  $ code_sous_bassin         : logi  NA NA NA
##  $ libelle_sous_bassin      : logi  NA NA NA
##  $ code_bassin              : logi  NA NA NA
##  $ libelle_bassin           : logi  NA NA NA
##  $ code_commune             : chr  "22313" "22313" "22313"
##  $ libelle_commune          : chr  "Saint-Martin-des-Prés" "Saint-Martin-des-Prés" "Saint-Martin-des-Prés"
##  $ code_departement         : chr  "22" "22" "22"
##  $ libelle_departement      : chr  "Côtes d'Armor" "Côtes d'Armor" "Côtes d'Armor"
##  $ code_region              : chr  "53" "53" "53"
##  $ libelle_region           : chr  "Bretagne" "Bretagne" "Bretagne"
##  $ latitude                 : logi  NA NA NA
##  $ longitude                : logi  NA NA NA
##  $ geometry                 : logi  NA NA NA

Mise en forme des données

liste_flo$CODE_OPERATION <-paste0(liste_flo$code_station_hydrobio, "*", liste_flo$date_prelevement)
liste_flo$CODE_STATION <- liste_flo$code_station_hydrobio
liste_flo$DATE <- format(liste_flo$date_prelevement, "%d/%m/%Y")
liste_flo$CODE_TAXON <- liste_flo$code_appel_taxon
liste_flo$RESULTAT <- liste_flo$resultat_taxon
liste_flo <- liste_flo %>% select(CODE_OPERATION, CODE_STATION, DATE, CODE_TAXON, RESULTAT)
liste_flo<-liste_flo%>%subset(!is.na(CODE_TAXON))

Appel du SEEE pour calculer l’indicateur IBD

calcule_SEEE_IBD(liste_flo)
##         CODE_OPERATION CODE_STATION       DATE CODE_PAR                 LIB_PAR
## 1  04195400*2013-07-19     04195400 19/07/2013     8060 NbTaxonsIBDcontributifs
## 2  04195400*2013-07-19     04195400 19/07/2013     8059       NbUniteDiatomique
## 3  04195400*2013-07-19     04195400 19/07/2013     5856           IndiceBioDiat
## 4  04195400*2014-06-17     04195400 17/06/2014     8060 NbTaxonsIBDcontributifs
## 5  04195400*2014-06-17     04195400 17/06/2014     8059       NbUniteDiatomique
## 6  04195400*2014-06-17     04195400 17/06/2014     5856           IndiceBioDiat
## 7  04195400*2015-06-23     04195400 23/06/2015     8060 NbTaxonsIBDcontributifs
## 8  04195400*2015-06-23     04195400 23/06/2015     8059       NbUniteDiatomique
## 9  04195400*2015-06-23     04195400 23/06/2015     5856           IndiceBioDiat
## 10 04195400*2016-06-07     04195400 07/06/2016     8060 NbTaxonsIBDcontributifs
## 11 04195400*2016-06-07     04195400 07/06/2016     8059       NbUniteDiatomique
## 12 04195400*2016-06-07     04195400 07/06/2016     5856           IndiceBioDiat
## 13 04195400*2017-10-03     04195400 03/10/2017     8060 NbTaxonsIBDcontributifs
## 14 04195400*2017-10-03     04195400 03/10/2017     8059       NbUniteDiatomique
## 15 04195400*2017-10-03     04195400 03/10/2017     5856           IndiceBioDiat
## 16 04195400*2018-08-28     04195400 28/08/2018     8060 NbTaxonsIBDcontributifs
## 17 04195400*2018-08-28     04195400 28/08/2018     8059       NbUniteDiatomique
## 18 04195400*2018-08-28     04195400 28/08/2018     5856           IndiceBioDiat
## 19 04195400*2019-09-11     04195400 11/09/2019     8060 NbTaxonsIBDcontributifs
## 20 04195400*2019-09-11     04195400 11/09/2019     8059       NbUniteDiatomique
## 21 04195400*2019-09-11     04195400 11/09/2019     5856           IndiceBioDiat
## 22 04195400*2020-06-23     04195400 23/06/2020     8060 NbTaxonsIBDcontributifs
## 23 04195400*2020-06-23     04195400 23/06/2020     8059       NbUniteDiatomique
## 24 04195400*2020-06-23     04195400 23/06/2020     5856           IndiceBioDiat
##    RESULTAT                                     COMMENTAIRES
## 1      31.0                                                 
## 2     408.0                                                 
## 3      20.0                                                 
## 4      22.0                                                 
## 5     403.0                                                 
## 6      17.6                                                 
## 7      13.0                                                 
## 8     410.0                                                 
## 9      20.0                                                 
## 10     23.0                                                 
## 11    405.0                                                 
## 12     17.8                                                 
## 13     23.0                                                 
## 14    368.0                                                 
## 15     17.7 Attention, moins de 400 individus au total (368)
## 16     37.0                                                 
## 17    386.0                                                 
## 18     15.7 Attention, moins de 400 individus au total (386)
## 19     38.0                                                 
## 20    341.0                                                 
## 21     18.0 Attention, moins de 400 individus au total (341)
## 22     25.0                                                 
## 23    388.0                                                 
## 24     20.0 Attention, moins de 400 individus au total (388)