« OpenRefine/Introduction » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
2le2im-bdc (discussion | contributions)
Aucun résumé des modifications
2le2im-bdc (discussion | contributions)
Aucun résumé des modifications
Ligne 4 : Ligne 4 :


Il semble en apparence similaire à un tableur mais voici les principales caractéristiques qui l'en distingue :
Il semble en apparence similaire à un tableur mais voici les principales caractéristiques qui l'en distingue :
*il est conçu pour faciliter les opérations de nettoyage;
*il est conçu pour faciliter les opérations de nettoyage de données;
*il permet d'enrichir avec des bases données externes.
*il permet d'enrichir des données avec des bases données externes.
*''à compléter''
*''à compléter''



Version du 27 janvier 2020 à 22:17

OpenRefine (anciennement Freebase Gridworks puis Google Refine) est un logiciel libre de nettoyage et de mise en forme de données (voir l'article Wikipédia OpenRefine pour plus d'informations sur son histoire).

Il semble en apparence similaire à un tableur mais voici les principales caractéristiques qui l'en distingue :

  • il est conçu pour faciliter les opérations de nettoyage de données;
  • il permet d'enrichir des données avec des bases données externes.
  • à compléter

Par où commencer?

Tutoriels video

Introduction 2011

Il existe trois vidéo "officielles" en anglais qui sont anciennes mais qui démontrent bien tout le potentiel de cet outil.

Video 1

Google Refine 2.0 - Introduction (1 of 3) a été publiée le 19 juillet 2011.

Elle présente les actions suivantes :

  • import d'un fichier CSV.
  • création d'un projet.
  • établir une facette texte.
  • fonctionnement des facettes (sélection, édition manuelle, transformation via l'option Groupe).
  • procéder à des transformations classiques sur l'ensemble des valeurs d'une colonne (ex: enlever des espaces après ou avant le texte)
  • utilisation du journal des actions (Undo/Redo).
  • établir une facette numérique.
  • utilisation du language GREL.
    • value.log()

Video 2

Google Refine 2.0 - Data Transformation (2 of 3) a été publiée le 19 juillet 2011.

Elle présente les actions suivantes :

  • importer un fichier .txt.
  • utiliser la fonction "Filtrer le texte" sur une colonne spécifique.
  • Supprimer des lignes en utilisant la fonction "Supprimer les lignes correspondantes" sur la colonne "Toutes"->"Éditer les lignes".
  • Transformer des valeurs en leur appliquant une formule GREL sur une colonne spécifique via "Éditer les cellules"->"Transformer":
    • value.replace("quelque chose","quelque chose d'autre")
  • Ajouter une colonne qui va contenir le résultat d'une requête logique sur la colonne précédente à travers "Éditer la colonne"->"Ajouter une colonne en fonction de cette colonne" puis une expression GREL:
    • not(value.startsWith("quelque chose"))
  • Ajouter une colonne qui va contenir une partie du texte extrait de la colonne précédente à travers "Éditer la colonne"->"Ajouter une colonne en fonction de cette colonne" puis une expression GREL:
    • value(1,5) qui signifie reprendre les valeurs ayant la position de 1 à 5 dans la nouvelle colonne.
  • Ajouter une colonne qui va contenir le même texte que la colonne précédente mais avec des caractères en mois à travers "Éditer la colonne"->"Ajouter une colonne en fonction de cette colonne" puis une expression GREL:
    • value.substring(2) qui signifie reprendre tous les caractères moins ceux ayant les deux premières positions.
  • Compléter les cellules vides d'une colonne en reproduisant la valeurs de la cellules supérieures via "Éditer les cellules"->"Recopier les valeurs dans les cellules vides consécutives".
  • Séparer le texte d'une colonne en plusieurs colonnes en spécifiant un élément séparateur via "Éditer la colonne"->"Diviser en plusieurs colonnes".
  • Renommer une colonne via "Éditer la colonne"->"Renommer cette colonne".
  • Modifier les valeurs d'une colonne en s'appuyant sur l'analyse d'une autre colonne et en ajoutant une valeur en fonction via "Éditer les cellules"->"Transformer" et une expression GREL:
    • if(cells["titre d'une autre colonne"].value, value + "un texte", value) qui nécessite que l'autre colonne dispose de valeur de requête vrai ou faux. Si c'est le cas alors on peut utiliser if (si) le valeur est vraie alors ajoute au texte existant un texte, sinon on laisse la valeur telle quelle.
  • Exporter le résultats sous forme une forme originale non prévue par OpenRefine (ex: table Wikicode) via "Exporter"->"Modélisation".
  • Rejouer les transformations opérées dans cette suite d'action sur un autre jeu de données via la fonction "Extraire" et "Appliquer".

Video 3

Google Refine 2.0 - Data Augmentation (3 of 3) a été publiée le 19 juillet 2011.

Elle présente les actions suivantes :

  • enrichir les données à partir de ressources externes via "Éditer cette colonne"->"Ajouter une colonne en moissonnant des URL". Les exemples suivants sont présentés:
    • ajouter des coordonnées géograhiques au moyen d'OpenStreetMap : ttps://wiki.openstreetmap.org/wiki/Nominatim avec une transformation GREL : with(value.parseJson()[0],pair, pair.lat + ',' + pair.lon).
    • identifier la labgue du texte au moyen d'une application google : https://ajax.googleapis.com/ajax/services/language/detect? (service de détection automatique de langues par google qui exige une clé d'authentification) suivi d'une transformation GREL : value.parseJson().responseData.language.
  • Ajouter toute sorte d'information au moyen de la réconciliation et de l'enrichissement des données avec une base de données externes :
    • dans l'exemple donné, il s'agit de Freebase dont le contenu a été versé dans Wikidata en 2014.