K Annexe : Exemples de “recettes”
Les recettes sont des séquences d’opération et de formules permettant d’accomplir une tâche spécifique.
On peut trouver une liste de recette sur le wiki OpenRefine (https://github.com/OpenRefine/OpenRefine/wiki/Recipes), sur Stackoverflow et dans d’autres sources.
Recettes du wiki OpenRefine
Manipulation de nombres
- Analyser et formater des numéros de téléphone
- Convertir des coordonnées géographiques au format décimal
- Vérification d’un ISBN10
- Conversion d’un ISBN10 en ISBN13
Manipulation de chaînes
- Extraire la première valeur d’une cellule multi-valuée
- Transformer le format d’une date. Ex : “2010-05-31T01:10:0Z” en “05/31/2010”
- Supprimer les espaces au déburt et à la fin des valeurs
- Mettre en majuscules les premières lettres en gérant les mots composés.
- Remplacer des caractères ou signes de ponctuation avec des expressions régulières
- Supprimer un préfixe au début des valeurs. Ex : “someprefix_a2343” -> “a2343”
- “blah_2342_blah_1232” -> “2342_blah_1232”
- “a:b:c:d:e” -> “b:c:d”
- Unique separator for split / join multi-valued cells
- Préfixer une valeur avec des 0
- Trouver des noms de personne dans une chaîne. Ex : “Le fameux Marcel Proust” -> “Marcel Proust”
- Séparer les lettres et les nombres. Ex : “Aug13” -> “Aug 13”
- Trouver un motif à la fin d’une chaîne
- Supprimer le dernier mot d’une chaîne
- “00003400340300004” -> [“000034”,“0034”,“03”,“00004”]
- split / map / join
- Remplacer les entités HTML : “AT&T” –> “AT&T”
- Supprimer ou extraire les mots contenus dans un fichier
- Remplacer les Replace string list entries
Manipulation de dates
- Comparer des dates entre deux colonnes
- Convertir une date “Epoch” en date ISO 8601 et en date OpenRefine
Manipulation de JSON
Parse JSON and Create Custom Arrays using forEach() Parse an IP address to extract a Country Name, Latitude & Longitude
Récupération de données Web et web scraping
- Get HTTP Response Header field (e.g. redirect location)
- XML parsing & stripping
Gérer les valeurs dupliquées
- Removing duplicate rows when Exact values are found in a column
- Handling duplicate patterns found in cells within a column
- Facet and Count duplicate patterns found in a cell value at each row
Manipulation de colonnes
- Count non-blank values in each column
- Count blank values in each column
- Create a new column based on the value of “Star” or “Flag”
- Merging several columns
- Merging all or more than two columns in a project
Gestion des erreurs
- forNonBlank
Problèmes d’encodage
- Remplacer des caractères accentués
- “Aïn Témuchent” —> “Aïn Témuchent”
- Spot Values Potentially Placed in the wrong Column
- Question Marks � showing in your data
Lignes et entrées
- Facet for rows with a certain number of blank cells
- Get multiple rows from a Record row column
- Shift values in multiple rows
Clojure
- Parse a URL or URI to extract a Host, Path, Query, or convert to a URI
Recettes complexes
- Géocodage : transformer des adresses en coordonnées géographiques (exemple obsolète)
- Récupérer des données à partir d’un web service (exemple obsolète)
- Web scraping et extraction d’information depuis une page HTML
- Ecrire des formules en Python
- Ecrire des formules en Python utilisant une librairie Java externe
- Ecrire des formules en Python en utilisant un module Python externe
- Intégration avec un carnet Jupyter
Recettes Bibliopedia
Recettes liées aux usages en bibliothèque (en France) : http://bibliopedia.fr/w/index.php?title=OpenRefine_:_exemples
Recettes Stackoverflow
- Utiliser une expression régulière dans une facette
- Découper une chaîne en fonction des initiales accentuées
- Fusionner des lignes en fonction d’un identifiant
- Rechercher et remplacer des emojis en Python
- Créer des éléments Wikidata depuis des entrées OpenRefine
- Extraire des motifs et les copier dans de nouvelles colonnes
- Remplacer des valeurs “null”
- Insérer un caractère à une position définie
- Transposer un nombre variable de lignes en colonnes
- Comparer deux listes
- Construire une facette par mois
- Combiner et nettoyer deux tables de mapping
- Supprimer les parenthèses les plus externes
- Supprimer les doublons dans une liste de valeurs séparées par ,