Import des données Hubeau ESO
import-des-donnees-hubeau-eso.Rmd
library(data.nitrates)
# Lire le fichier de configuration
config <- yaml::read_yaml("config.yml")
# Accéder à la valeur pour last_year
last_year <- config$last_year
Présentation
Cette page contient la logique métier concernant l’import des données de l’API Hub’eau “Qualit0e9 des nappes d'eau souterraine” dans le cadre du projet Nitrates.
Import des données Hub’eau ESU dans un dataframe par millésime
On utilise la fonction get_qualite_nappes_analyses()
du
package {hubeau}
Création d’une table pour le nouveau millésime
# Charger les données dans une nouvelle table en base
datalibaba::poster_data(data = nitrate_analyse_eso_last_year,
table = glue::glue("nitrate_qualite_nappes_analyses_", last_year),
schema = "qualite_nappes_eau_souterraine",
db = "si_eau",
overwrite = TRUE,
user = "admin")
# Ajouter un commentaire sur la table
datalibaba::commenter_table(
comment = glue::glue(
"Analyses \"Nitrates\" ESO issues de l\'\'API Hubeau qualite_nappes : donn\u00e9es brutes ",
last_year),
table = glue::glue("nitrate_qualite_nappes_analyses_", last_year),
schema = "qualite_nappes_eau_souterraine",
db = "si_eau",
user = "admin")
Modification du type des champs si besoin
# Modifier le type de colonne pour les champs de date
collectr::modify_column_type(database = "si_eau",
schema = "qualite_nappes_eau_souterraine",
table = glue::glue("nitrate_qualite_nappes_analyses_", last_year),
column_name = "date_debut_prelevement",
column_type = "date",
role = "admin")
Archivage de la version précédente de la table
# Archiver la version actuelle de la table avec tous les millésimes
collectr::archive_table(database = "si_eau",
schema = "qualite_nappes_eau_souterraine",
new_schema = "zz_archives",
table = "nitrate_qualite_nappes_analyses",
role = "admin")
Insertion des données du nouveau millésime en base dans la table globale
# Insérer les données de la table du dernier millésime vers la table complète
collectr::import_and_merge_tables(database = "si_eau",
source_table = glue::glue("nitrate_qualite_nappes_analyses_", last_year),
source_schema = "qualite_nappes_eau_souterraine",
target_table = "nitrate_qualite_nappes_analyses",
target_schema = "qualite_nappes_eau_souterraine",
role = "admin")
# Actualiser le commentaire sur la table
datalibaba::commenter_table(
comment = glue::glue(
"Analyses Nitrates ESO API Hubeau Qualit\u00e9 des nappes d\'eau souterraine (2007-",
last_year,
")"),
table = "nitrate_qualite_nappes_analyses",
schema = "qualite_nappes_eau_souterraine",
db = "si_eau",
user = "admin"
)