Introduction à OpenRefine
14 février 2023, 15h à 16h20 HNE
Présenté par: Pier-Luc St-Onge
Durée: 80 minutes
Description: Un essentiel pour les personnes spécialisées en sciences humaines et sociales, ainsi que pour les professionnels des bibliothèques et de l’information, cet atelier adapté de Data Carpentry est une introduction au nettoyage des données avec OpenRefine. Ce puissant outil peut être utilisé pour uniformiser et nettoyer des fichiers de données tabulaires, que ce soit en format CSV (séparation par des virgules) ou TSV (séparation par des espaces de tabulation). Il permet de réaliser un diagnostic de l’état des données, de résoudre des inconsistances, de subdiviser certains champs contenant une séquence de valeurs, etc. À la fin de cet atelier, vous devriez avoir une bonne idée de ce que OpenRefine permet de faire et de comment l’utiliser pour vos fichiers de données. Aucune expérience préalable n’est requise.
Prérequis techniques: Les participantes et participants devront installer Java et OpenRefine sur leur ordinateur. Les instructions d’installation se trouvent dans une section du matériel ci-dessous et seront aussi fournies par courriel.
Inscrivez-vous ici
The same workshop in English.
Biographie
Diplômé au baccalauréat et à la maîtrise en génie logiciel et génie informatique, Pier-Luc St-Onge a travaillé pendant cinq ans pour différents laboratoires de recherche avant de rejoindre Calcul Québec en mai 2013. Dans son projet de recherche, il s’était spécialisé en vision par ordinateur avec OpenCV. À Calcul Québec, il fait partie de l’équipe d’analystes offrant du soutien aux utilisateurs des ressources de calcul.
Préparation pour l’atelier
Les instructions ci-dessous proviennent de l’atelier Data Carpentry: OpenRefine for Social Science Data.
Installation
- Télécharger OpenRefine ici
- Si Java n’est pas inclus avec l’installateur d’OpenRefine, il faudra installer cette dépendance.
- Installer OpenRefine selon les instructions ici.
Veuillez nous demander de l’aide sur Slack si vous avez des problèmes avec ces étapes d’installation.
Les données
Pour cet atelier, nous utiliserons ce fichier CSV : SAFI_openrefine.csv.
- Notez bien l’endroit où vous avez sauvegardé ce fichier dans votre ordinateur, car il faudra le charger dans OpenRefine pendant l’atelier.
- À propos des données : ce fichier est tiré du tutoriel Data Carpentry. Il est conçu pour l’enseignement, c’est-à-dire que son contenu est une version réduite et intentionnellement modifiée de la base de données du projet Studying African Farmer-Led Irrigation (SAFI).
Tutoriel Data Carpentry
Cet atelier est une version écourtée du tutoriel en ligne OpenRefine for Social Science Data.
Les chapitres et les concepts d’OpenRefine que nous verrons sont listés dans les sections ci-dessous.
1- Introduction à OpenRefine
=> Matériel Data Carpentry - Chapitre 1
- Pourquoi un atelier sur OpenRefine?
- Faciliter le nettoyage des données
- Reproduire et publier la méthode
- Qu’est-ce que OpenRefine?
- Application locale via un navigateur Web
- Préservation des données brutes
- Aperçu des données
- Trouver et résoudre des inconsistences
- Division de valeurs multiples
- Fusion avec des données externes
- Annulation d’opérations au besoin
- Réutilisation de recette de nettoyage
2. Travailler avec OpenRefine
=> Matériel Data Carpentry - Chapitre 2
Création d’un projet
- Démarrage d’OpenRefine
- Importation d’un fichier
(Image)
- Formats pris en charge : CSV, TSV, Excel (xls, xlsx), JSON, XML, Google Spreadsheets.
- Valider la séparation des colonnes
(Image)
- Nettoyer les espaces de début et de fin
Facettes de données
- Regrouper des enregistrements selon les valeurs d’une colonne
- Text facet sur la colonne
village
(Aperçu des options)- Tri par le nom et le décompte (Exemple de facette)
- Édition d’un groupe de valeurs
- Facettes numériques, de dates et heures, personnalisées
- Exercice en groupe
- Trouver le nombre de différentes
interview_date
avec une facette - Convertir en dates :
Edit cells
>Common transforms
>To date
- Trouver la période ayant le plus d’enregistrements avec
Timeline facet
- Trouver le nombre de différentes
Référence : https://docs.openrefine.org/manual/facets
Grappes de valeurs semblables
- Facette textuelle de
village
=> BoutonCluster
- Méthode
key collision
et clé de fonctionmetaphone3
(Exemple d’analyse) - Activer la fusion des valeurs, fusionner et refaire le calcul des grappes
- Test d’autres méthodes et clés de fonction
- Corrections manuelles lorsqu’aucune grappe ne se trouve facilement
Référence : https://openrefine.org/docs/manual/cellediting#cluster-and-edit
Transformation des données avec GREL
- Colonne
items_owned
>Edit Cells
>Transform...
(Image)value.replace("[", "")
et OK
- Exercice en groupe
- Répéter avec
value.replace("]", "")
,value.replace("'", "")
etvalue.replace(" ", "")
- Répéter avec
- Colonne
items_owned
>Facet
>Custom text facet...
- Expression :
value.split(";")
- Expression :
- Cliquer sur l’onglet
Undo / Redo
, voir les changements- En annuler et tous les refaire
3. Filtrer avec OpenRefine
=> Matériel Data Carpentry - Chapitre 3
Note : puisque le tri peut se faire via les facettes, nous sauterons les sections à ce sujet.
- Filtre de texte
- Colonne
respondent_roof_type
>Text filter
- Exercice en groupe
- Tenter une sélection avec
mabat
- Observer la table et la facette
- Modifier la vue pour avoir jusqu’à 50 rangées
- Rajouter deux lettres (
ip
, par exemple) - Remettre à
mabat
- Tenter une sélection avec
- Colonne
- Inclusion et exclusion des valeurs sur les facettes
- Vis-à-vis une des deux valeurs, cliquer sur
include
- Noter le nombre de rangées qui change
- Tester différents
include
/exclude
, cliquer sur une valeur
- Vis-à-vis une des deux valeurs, cliquer sur
- Facette == aperçu, filtre == sélection
4. Examiner les nombres
=> Matériel Data Carpentry - Chapitre 4
- Gestion des nombres
- Enlever toutes les facettes de texte
- Colonne
years_farm
>Edit cells
>Commont Transforms...
>To number
- Exercice en groupe
- Transformer
no_membrs
,years_liv
,buildings_in_compound
etvillange
en nombres - Cliquer sur l’onglet
Undo / Redo
et voir les changements
- Transformer
- Facette numérique
- Colonne
gps_Altitude
>Facet
>Numeric Facet
- Trier dans la facette pour identifier les valeurs manquantes
- Exercice en groupe
- Colonne
years_liv
:- Remplacer un nombre par
abc
- Remplacer un autre nombre par rien (laisser vide)
- Remplacer un nombre par
- Obtenir une facette numérique sur la colonne
- Activer et désactiver la vue des valeurs
Numeric
,Non-numeric
,Blank
etError
- Fermer la facette
- Annuler tous ces derniers changements dans
Undo / Redo
- Colonne
- Colonne
5. Réutiliser les étapes de nettoyage
=> Matériel Data Carpentry - Chapitre 5
- Exporter les transformations
(Image)
Undo / Redo
>Extract ...
> Sélection des étapes- Copier le code dans un éditeur texte et sauvegarder (fichier
*.txt
)
- Importer les transformations
- Démarrer un nouveau projet (nouveau nom), même fichier CSV
Undo / Redo
>Apply
> Coller le contenu du fichier*.txt
- Cliquer sur
Perform operations
; valider le nettoyage
- Science reproductible
- Gestion des changements
du fichier
*.txt
- Publication des données et des étapes de changement
- Gestion des changements
du fichier
6. Exporter les données et le projet
=> Matériel Data Carpentry - Chapitre 6
- Exporter les données nettoyées
Export
> choix du type de fichier (TSV ou CSV)- Comme le téléchargement d’un fichier
*.tsv
ou*.csv
- Sauvegarde automatique du projet
- Exporter un projet -
Export
>OpenRefine project archive to file
- Comme le téléchargement d’un fichier
*.tar.gz
- Contient un dossier
history
pour les données transformées et un fichierdata.zip
contenant les données initiales. - Importation via
Open...
>Import Project
> fichier*.tar.gz
- Comme le téléchargement d’un fichier
7. Ressources supplémentaires
=> Matériel Data Carpentry - Chapitre 7