Skip to content

Commit

Permalink
ajout expl_commentaires_champs()
Browse files Browse the repository at this point in the history
  • Loading branch information
PascalIrz committed Oct 22, 2021
1 parent d287761 commit 8352fb6
Show file tree
Hide file tree
Showing 8 changed files with 81 additions and 8 deletions.
2 changes: 1 addition & 1 deletion DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Package: aspe
Type: Package
Title: Import, Process and Visualise the French River Fish Database ASPE
Version: 0.1.16
Version: 0.1.17
Author: Pascal Irz <[email protected]>
Maintainer: Pascal Irz <[email protected]>
Description: The aspe package provides a suite of tools for most of the common
Expand Down
1 change: 1 addition & 0 deletions NAMESPACE
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Generated by roxygen2: do not edit by hand

export(expl_commentaires_champs)
export(expl_lister_champs)
export(expl_trouver_table)
export(expl_trouver_variable)
Expand Down
48 changes: 48 additions & 0 deletions R/expl_commentaires_champs.R
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#' Obtenir les commentaires qui donnent la signification des champs des tables
#'
#' @param fichier_dump Le chemin vers le fichier d'extension .sql (décompressé) ou
#' .sql.gz (archive).
#'
#' @return Un dataframe avec pour chacun des champs sa table d'appartenance et sa signification.
#' @export
#'
#' @importFrom stringr str_replace str_subset str_sub str_extract
#'
#' @examples
#' \dontrun{
#' expl_commentaires_champs(fichier_dump = "../raw_data/dump.sql")
#' }
#'
#'
expl_commentaires_champs <- function(fichier_dump) {

lignes_dump <- imp_lire_lignes_dump(fichier_dump)

# sélection des lignes contenant les commentaires des champs
mes_lignes <- lignes_dump %>%
stringr::str_subset(pattern = 'COMMENT ON COLUMN') %>%
str_replace("COMMENT ON COLUMN ", "")

# noms de la table = préfixe du nom complet du champ
nom_table <- mes_lignes %>%
str_extract("[^\\.]*")

# nom du champ
nom_var <- mes_lignes %>%
str_replace("[^\\.]*", "") %>%
str_replace("\\.", "") %>%
str_extract("[^ IS ]*")

# commentaire sur le champ
comm_var <- mes_lignes %>%
str_replace("[^ IS ]*", "") %>%
str_replace(" IS ", "") %>%
str_sub(start = 2, end = -3) %>%
str_replace("''", "'")

# assemblage du résultat ; suppression des champs des tables temporaires
data.frame(nom_table,
nom_var,
comm_var) %>%
filter(!str_detect(nom_table, "^temp_"))
}
2 changes: 1 addition & 1 deletion R/globals.R
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ utils::globalVariables(c('.',
'mei_taille', 'mei_poids', 'mei_lop_id', 'mei_tlo_id', 'mesure_individuelle',
'cli_altitude_min', 'cli_borne_inf', 'cli_libelle', 'opi_cli_id', 'cli_id',
'ref_unite_hydrographique', 'unh_libelle', 'unh_code_sandre', 'unh_libelle_sandre',
'ABLab', 'VANab',
'ABLab', 'VANab', 'champs',
'bon derniere_annee', 'n_sta', 'pas_bon', 'premiere_annee', 'derniere_annee', 'bon',
'..density..', 'dens_ind_1000m2',
'V6', 'V7', 'V8', 'V9', 'x', 'scaled', 'n_sup_seuil', 'tp_esp',
Expand Down
1 change: 0 additions & 1 deletion R/imp_importer_dump_sql.R
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
#' @return Les dataframes correspondant à chacune des tables de la base.
#' @export
#'
#' @import dplyr
#' @importFrom utils type.convert
#' @importFrom stringi stri_detect_fixed
#' @importFrom stringr str_replace_all str_subset str_sub str_split
Expand Down
6 changes: 3 additions & 3 deletions R/imp_tables_a_partir_des_lignes.R
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
#'
#' @param lignes_dump Nom de la liste contenant les lignes du dump.
#' @param tables_a_extraire Un vecteur contenant les noms des tables à extraire.
#' Par défaut toutes les tables sont extraites, ce qu ipeut prendre du temps
#' unutilement.
#' Par défaut toutes les tables sont extraites, ce qui peut prendre du temps
#' inutilement.
#' @return Les dataframes correspondant à chacune des tables de la base.
#' @export
#'
Expand Down Expand Up @@ -78,7 +78,7 @@ imp_tables_a_partir_des_lignes <- function(lignes_dump, tables_a_extraire = NA)
caracteristiques_tables <- caracteristiques_tables %>%
group_by(nom_table) %>% # nécessaire car la fonction imp_trouver_index_fin n'accepte pas les vecteurs en entrée
mutate(index_ligne_fin = imp_trouver_index_fin(vecteur_index_lignes_fin = vecteur_index_lignes_fin,
ligne_debut = index_ligne_debut)) %>%
ligne_debut = index_ligne_debut)) %>%
mutate(index_ligne_fin = index_ligne_fin - 1,
index_ligne_debut = index_ligne_debut + 3)

Expand Down
25 changes: 25 additions & 0 deletions man/expl_commentaires_champs.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions man/imp_tables_a_partir_des_lignes.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 8352fb6

Please sign in to comment.