From af81c2b9d2f2b64a1d9cb644c6d6c11f14ab9801 Mon Sep 17 00:00:00 2001 From: LE DURAND Matteo <matteo.le-durand@developpement-durable.gouv.fr> Date: Tue, 18 Mar 2025 16:17:56 +0100 Subject: [PATCH] ajout du package fuzzjoin, on retire la table de correspondance pour que ca soit au max automatique --- global.R | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/global.R b/global.R index 3643d78..f9d2c93 100644 --- a/global.R +++ b/global.R @@ -21,6 +21,7 @@ library(shinyWidgets) library(textclean) library(stringi) library(readr) +library(fuzzyjoin) # chargement des données (résultat du script "dev/script_chargement_rdata.R") load("github.RData") load("gitlab_forge.RData") @@ -32,18 +33,21 @@ email_table <- read_csv("annuaire/email_total.csv") annuaire <- read_csv("annuaire/annuaire.csv") annuaire$Messagerie <- tolower(annuaire$Messagerie) -annuaire <- annuaire %>% rename( email = Messagerie) +annuaire <- annuaire %>% rename( mail = Messagerie) annuaire <- annuaire %>% filter( str_detect(Unité,"CSD" ) ) -annuaire <- annuaire %>% mutate(auteur = paste(Prénom, Nom))%>% select(email, auteur) +annuaire <- annuaire %>% mutate(auteur = paste(Prénom, Nom), + mail_clean = str_remove(mail, "@.*") )%>% select(mail_clean, auteur) all_data <- bind_rows(all_data_gitlab, all_data_forge, combined_data) all_data$updated_at <- as.POSIXct(all_data$updated_at, format = ("%Y-%m-%dT%H:%M:%S")) -all_data <- all_data %>% mutate(message = paste0(type,sep = " : ",message)) +all_data <- all_data %>% mutate(message = paste0(type,sep = " : ",message), + email_clean = str_remove(author, "@.*")) -all_data <- all_data %>% left_join(email_table) # nettoyage de certaine adresse mail invalide -all_data <- all_data %>% left_join(annuaire) # ajout de auteur des membre du SCTE via l'annuaire +all_data <- all_data %>% stringdist_left_join(annuaire,by = c("email_clean" = "mail_clean"), method = "jw", max_dist = 0.25) # ajout de auteur des membre du SCTE via l'annuaire all_data <- all_data %>% dplyr::mutate(etiquette = paste(groupe,topics,sep = ",")) +df <- all_data %>% filter(!is.na(auteur)) %>% select(author,auteur) +distinct(df)%>% datatable() # transformation re_code ---- traduction <- c( -- GitLab