\--- Titre: Protocole de nettoyage automatisé de corpus texte sous R auteur: Pauline Bureau \--- #### Objectif Ce protocole automatise le nettoyage d’un corpus \`.txt\` extrait de fichiers PDF convertis. Il vise à éliminer les éléments suivants, tout en préservant les mots composés valides : \- URLs (liens web) \- Numéros de page \- Traits d’union de coupure de ligne \- Sauts de ligne non nécessaires #### Préparation 1\. Créer un dossier \`corpus\_brut/\` contenant les fichiers \`.txt\` extraits 2\. Créer un dossier \`corpus\_nettoye/\` qui recevra les fichiers nettoyés \`\`\`r library(stringr) library(readr) # Définir les chemins d'entrée et de sortie input\_dir \<- "corpus\_brut" output\_dir \<- "corpus\_nettoye" # Créer le dossier de sortie s'il n'existe pas if (\!dir.exists(output\_dir)) dir.create(output\_dir) # Liste des fichiers texte files \<- list.files(input\_dir, pattern \= "\\\\.txt$", full.names \= TRUE) #### Fonctions de nettoyage clean\_text \<- function(text) { # 1\. Supprimer les URLs (http et www) text \<- str\_remove\_all(text, "https?://\\\\S+|www\\\\.\\\\S+") # 2\. Supprimer les numéros de page du type "3 / 4" text \<- str\_remove\_all(text, "\\\\d+\\\\s\*/\\\\s\*\\\\d+") # 3\. Supprimer les traits d’union en fin de ligne causés par les retours à la ligne (sans espace après) text \<- str\_replace\_all(text, "-\\\\s\*\\n\\\\s\*", "") # 4\. Réunir les lignes coupées (remplacer sauts de ligne inutiles par un espace) text \<- str\_replace\_all(text, "(\\\\S)\\\\s\*\\\\n\\\\s\*(\\\\S)", "\\\\1 \\\\2") # 5\. Supprimer les nombres isolés (souvent résidus de pages) text \<- str\_remove\_all(text, "\\\\b\\\\d+\\\\b") #6. Supprimer les multiples espaces text \<- str\_squish(text) return(text) } #### Traitement du corpus # Boucle sur tous les fichiers for (file in files) { # Lire le texte raw\_text \<- read\_file(file) # Appliquer le nettoyage cleaned \<- clean\_text(raw\_text) # Enregistrer dans le dossier de sortie out\_path \<- file.path(output\_dir, basename(file)) write\_file(cleaned, out\_path) }