4. Retrouver des données structurées
Données non structurées
Une donnée non structurée est une donnée présente mais qu'un système automatisé aura bien du mal à retrouver.
Exemple
C'est une voiture de sport de couleur rouge et conduite par un moustachu qui porte des chemises à fleurs.
L'un de ses amis possède un bel hélicoptère. Celui-ci est plutôt marron mais possède également quelques lignes colorées dans des tons rouge, bleu et jaune.
Quelles sont les couleurs des deux véhicules ? Vous venez d'utiliser un centre de traitement de l'information super performant : votre cerveau.
Pas possible pour un ordinateur. Il existe une branche de la recherche informatique qui traite de cette capacité de donner du sens à un texte brut mais c'est loin d'être facile et rapide.
La meilleur façon pour qu'un ordinateur puisse traiter cela est de lui mâcher le travail : nous allons structurer les données.
Données structurées
Une donnée structurée est une donnée présentée selon un format connu et fixe.
Il peut s'agir par exemple d'un tableau à deux entrées qu'on appelle table de données.
Exemple
Cette fois, on voit qu'on pourra demander facilement à l'ordinateur de renvoyer les couleurs des véhicules : il suffit de trouver la bonne colonne. C'est beaucoup plus facile.
Les colonnes sont nommées les descripteurs.
Toutes les données présentes dans ce tableau partagent les mêmes descripteurs et les fournissent dans le même ordre :
ID - Type - Catégorie - Couleur.
Chaque ligne se nomme un objet ou un enregistrement. Chaque case est une valeur ou une donnée.
La seule ligne qui ne soit pas un objet est la toute première, en bleu foncé. Il s'agit de l'en-tête (header en anglais). Elle permet de connaître le nom et l'ordre des descripteurs.
La collection est le nom donné à l'ensemble des objets, donc au tableau.
4.1 Quels sont les descripteurs de la collection précédente ?
4.2 Combien y-a-t-il d'enregistrements dans cette collection ?
4.3 Quelle est la valeur qui correspond au descripteur d'indice 2 et à l'enregistrement d'indice 0 ?
4.4 Quel est le seul attribut qui permette de distinguer le premier et le dernier enregistrement ?
4.5 Dans un autre contexte, peut-on séparer deux individus uniquement à l'aide du nom et du prénom ? A quoi sert le numéro de sécurité sociale ?
Exercice Pokémon
Voici un extrait des caractéristiques des Pokémons.
4.6 Combien d'enregistrement sont-ils visibles sur cette photo d'écran ?
4.7 Quelle est la lettre caractérisant le descripteur points de vie (HP pour Hit Points en anglais) ?
4.8 La cellule G4 sélectionnée fait référence à 82. Quel est le descripteur correspondant ?
4.9 Trouver le ou les Pokémons de type Feu qui possèdent une attaque supérieure à 80 et une défense supérieure à 80. Pensez-vous qu'on peut programmer facilement ce type de requête ?
Trois formats de données
Le format CSV
CSV veut dire Comma-Separated Value : valeur séparée par des virgules.
- Le début et la fin de la collection sont simplement le début et la fin du fichier-texte.
- Une ligne par enregistrement.
- Chaque descripteur est fourni sur la ligne dans un ordre précis. C'est le passage à la ligne qui permet au système de détecter et séparer les enregistrements.
- Les valeurs des descripteurs sont séparées par des virgules ou des points virgules.
- Option : La première ligne peut contenir les noms des descripteurs et pas un enregistrement.
A titre d'exemple voici la représentation CSV d'un tableau contenant la collection ci-dessous :
Contenu du fichier vehicules.csv :
1 2 3 4 |
Identifiant, Type, Utilisation, Couleur 0, Voiture, Sport, Rouge 1, Hélicoptère, Tourisme, Marron 2, Voiture, Sport, Rouge |
Un tableur est capable d'ouvrir les fichiers CSV.
4.10 En utilisant un simple éditeur de texte comme Notepad ou Notepad++, réaliser un fichier CSV contenant au moins 3 chansons dont voici les descripteurs et leurs ordres :
- Le "nom" de la chanson
- L'"interprète" (le chanteur ou le groupe si c'est un groupe)
- Le "genre" du morceau (en minuscules): rap, pop, rock, ...
- L'année de "sortie" du morceau
- La durée en "minutes" sous forme d'un entier (inutile de rajouter les secondes)
- Votre "notation" entre 0 (c'est nul) et 5 (c'est top)
Pour enregistrer ce fichier au format csv, il suffit d'écrire Nom_du_fichier.csv lors de l'enregistrement.
Pour qu'il apparaisse sous forme de tableau dans Excel, lancer le logiciel puis faire Données - A partir d'un fichier texte csv et charger votre fichier.
Faire une copie d'écran.
Reconnaître les formats CSV, XML et JSON
Voici la même table codée sous trois formats de type texte différents.
CSV |
XML |
JSON |
Nom, Prénom, Profession, Décès Hugo, Victor, Écrivain, 1885 Camus, Albert, Écrivain, 1960 |
<Auteurs> <Auteur> <Nom>Hugo</Nom> <Prénom>Victor</Prénom> <Décès>1885</Décès> </Auteur> <Auteur> <Nom>Camus</Nom> <Prénom>Albert</Prénom> <Décès>1960</Décès> </Auteur> </Auteurs> |
[ { "Nom" :"Hugo", "Prénom" :"Victor", "Décès" :1885 }, { "Nom" :"Camus", "Prénom" :"Albert", "Décès" :1960 } ] |
- CSV [html, fr] : les données sont séparées par une virgule pour cet exemple. La première ligne du format CSV contient la liste des descripteurs de la table, séparés eux aussi par une virgule. Chaque ligne correspond aux données d'un individu de la collection. Les séparateurs n'étant pas standardisés, ils peuvent être dans d'autres cas un point-virgule ou une tabulation par exemple on parle alors de format TSV (Tabulation-separated values)
- XML [html, fr] (Extensible Markup Language langage de balisage extensible) : c'est un langage "à balises". Chaque enregistrement est ici écrit sous la forme <descripteur>donnée</descripteur> , une donnée pouvant être elle-même une table (données hiérarchisées).
- JSON [html, fr] (JavaScript Object Notation) : cet exemple montre que JSON est similaire au XML. Les enregistrements, séparés par des virgules, sont écrits de la forme descripteur : donnée. Chaque un individu de la collection est délimité par des accolades { ... }.
Créé avec HelpNDoc Personal Edition: Découvrez la puissance et la simplicité de l'interface utilisateur de HelpNDoc