« 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)
Balise : Contenu remplacé
Ligne 10 : Ligne 10 :
==Par où commencer?==
==Par où commencer?==
{{...}}
{{...}}

== Tutoriels video ==
=== Introduction 2011===
Il existe trois vidéo <nowiki>"officielles"</nowiki> en anglais qui sont anciennes mais qui démontrent bien tout le potentiel de cet outil.
==== Video 1 ====
[https://www.youtube.com/watch?v=B70J_H_zAWM 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 [[OpenRefine/Nettoyage_des_données#Groupe|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 [[OpenRefine/Nettoyage_des_données#Journal_des_actions|journal des actions]] (Undo/Redo).
* établir une facette numérique.
* utilisation du language [[OpenRefine/Nettoyage_des_données#GREL|GREL]].
** value.log()

==== Video 2 ====
[https://www.youtube.com/watch?v=cO8NVCs_Ba0&feature=youtu.be 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 [[OpenRefine/Nettoyage_des_données#GREL|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 [[OpenRefine/Nettoyage_des_données#GREL|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 [[OpenRefine/Nettoyage_des_données#GREL|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 [[OpenRefine/Nettoyage_des_données#GREL|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 [[OpenRefine/Export_des_données#Modélisation|"Exporter"->"Modélisation"]].
* Rejouer les transformations opérées dans cette suite d'action sur un autre jeu de données via la fonction [[OpenRefine/Nettoyage_des_données#Journal_des_actions|"Extraire" et "Appliquer"]].

==== Video 3 ====
[https://www.youtube.com/watch?v=5tsyz3ibYzk&feature=youtu.be 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 [[OpenRefine/R%C3%A9conciliation_et_enrichissement|réconciliation et de l'enrichissement]] des données avec une base de données externes :
** dans l'exemple donné, il s'agit de [[:w:Freebase (web)|Freebase]] dont le contenu a été versé dans [[:w:Wikidata|Wikidata]] en 2014.

Version du 28 janvier 2020 à 21:31

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?