Les formats CSV et JSON des données « open data »

  • Post last modified:3 octobre 2021
  • Reading time:7 mins read
  • Post category:Lycée / SNT

Introduction

Les données personnelles (Nom, téléphone…), les coordonnées GPS des véhicules, les mesures prises par les instruments scientifiques, etc… ne sont pas consignées dans des fichiers word ou pdf mais des fichiers spéciaux qui permettent d’organiser les données en tableaux pour mieux les classer, les trier, les exploiter.

A voir dans ce cours

Comment les données sont-elles organisées ?

Les données sont organisées dans un tableau ou table. La structure de table permet de présenter une collection : les objets en ligne, les descripteurs en colonne et les données à l’intersection : les données sont alors dites structurées.
Tableau de données avec mise en évidence des descripteurs et objets
Tableau appelé "Collection" dans le langage de l'organisation des données.

Un objet

Dans le tableau précédent,  l’objet est une personne qui est décrit par plusieurs descripteurs. Cela peut être un évènement ou autre chose.

Une donnée

C’est une valeur décrivant un objet digne d’intérêt pour celui qui choisit de la conserver.

Exemple : 06 75 34 : le numéro de téléphone d’une personne est une donnée.

Un descripteur

Plusieurs descripteurs peuvent être utiles pour décrire un objet.

Exemple : Pour décrire une personne, on utilise les descripteurs : nom, prénom, adresse et numéro de téléphone.

Pour assurer la sauvegarde et l’exploitation des données, ces dernières sont très souvent stockées dans des fichiers spécifiques à l’organisation des données : les extensions de ces fichiers sont *.csv ou *.xml ou *.json.

Le format CSV

Présentation du format CSV

Le format CSV (Comma Separated Values = données séparées avec des virgules) est très courant sur internet, nous allons l’étudier en premier. Voici ce que nous dit Wikipédia sur ce format de fichier :

Un fichier CSV est un fichier texte. Chaque ligne du texte correspond à une ligne du tableau et les virgules correspondent aux séparations entre les colonnes. Les portions de texte séparées par une virgule correspondent ainsi aux contenus des cellules du tableau.

Voici un exemple du contenu d’un fichier CSV :

nom,prenom,date_naissance
Durand,Jean-Pierre,23/05/1985
Dupont,Christophe,15/12/1967
Terta,Henry,12/06/1978
Travail sur feuille :
  1. Dans l’exemple ci-dessus, identifier les 3 descripteurs.
  2. Donner 2 exemples de données.
  3. Indiquez un objet.
  • Télécharger le fichier (clique droit puis « Enregistrer sous… » ou « Télécharger ») ident_pointVirgule.csv
  • Ouvrir ce dernier à l’aide d’un :
  1. Logiciel tableur (Excel ou Calc). Décrire ce que vous observez.
  2. Logiciel éditeur de texte (Notepad++, sublimetext, word). Décrire ce que vous observez.

Classer et trier les données

L’évolution des capacités de stockage (Cloud, disques dures…), de traitement et de diffusion des données fait que l’on assiste aujourd’hui à un phénomène de surabondance des données.

Même si les logiciels permettent de présenter les données de façon plus digeste pour les exploiter efficacement, les logiciels (Excel, Calc …) ou algorithmes (Python…) se développent pour effectuer des opérations tel que :

Travail sur ordinateur / Ecrire les réponses sur votre cahier :

Comme vous pouvez le constater, nous avons 12 colonnes. En première ligne se trouve les nombreux descripteurs (dep, nom, cp…) et les données de milliers d’objets.

Sans utiliser la molette de votre souris pour descentre epour la barre de défilement latéral (trop long et fastidieux), vous devez :

Le format JSON

Autre format de données, le JSON (JavaScript Object Notation) fonctionne avec un système de paire clé/valeur

Présentation du format JSON

Un objet est encadré par des accolades. Les clés représentent les descripteurs et les valeurs sont les données.
{cle_1 : val_1, cle_2 : val_2, cle_3 : val_3}
Afin que la lecture des données sous cette forme soit plus simple, on écrira :
{
cle_1 : val_1,
cle_2 : val_2,
cle_3 : val_3
}

Un fichier au format JSON peut regrouper un grand nombre d’objets :

{
"nom" : "Durand",
"prenom" : "Jean-Pierre",
"date_naissance" : "23/05/1985"
},
{
"nom" : "Dupont",
"prenom" : "Christophe",
"date_naissance" : "15/12/1967"
},
{
"nom" : "Terta",
"prenom" : "Henry",
"date_naissance" : "12/06/1978"
}

Travail sur feuille :

  1. Dans l’exemple ci-dessus, identifier les 2 descripteurs.
  2. Donner 2 exemples de données.
  3. Indiquez un objet.
  • Téléchargez le fichier ident.json
  • Ouvrir ce dernier à l’aide d’un :
  1. Logiciel tableur (Excel ou Calc). Décrire ce que vous observez.
  2. Logiciel éditeur de texte (Notepad++, sublimetext, word). Décrire ce que vous observez.

Générer des données JSON

De nombreux sites web proposent des services basés sur des API (Application Programming Interface). Ces sites sont capables de fournir des données aux formats JSON sur « simple demande ». Souvent, ces « demandes » sont effectuées par l’intermédiaire d’une url (=adresse web).

Nous allons illustrer ce propos en utilisant l’API d’un site qui fournit des informations météo au format JSON. Vous trouverez ce site à l’adresse suivante : openweathermap.org/api

Pour profiter de ce service, il est nécessaire d’obtenir une clé (API key) que votre enseignant vous fournira.

  • Ouvrez le navigateur mozilla firefox et copiez-collez l’url suivante dans la barre d’adresse du navigateur : http://api.openweathermap.org/data/2.5/weather?q=lyon,fr&lang=fr&units=metric&APPID=XXXXXXXXXXXXX

ATTENTION : il faut remplacer les « X » par la clé (API key) qui vous aura été fournie.

Au lieu d’obtenir une page web, vous devriez obtenir une page dont le contenu ressemble au codage du format JSON.

  • Enregistrer les données au format JSON (mettre l’extension « .json » à la fin du nom de votre fichier) 
  • Ouvrir votre fichier avec un logiciel tableur. Tutoriel : www.micka39.info/comment-fichier-json

L'open data

Travail :

Tous les sites web dispose d’une page dans laquelle les webmasters du site se présentent et développent leurs objectifs. Cette page se trouve très souvent en pied de page. Pour data.gouv.fr, il faut cliquer sur le lien hypertext « Données de référence » situé dans le pied de page.

  1. Pour qui s’adresse ce site ? Quel est son but ?
  2. Qui alimente en données ce site ?

Dans le site web, trouver et télécharger :

  • 1 fichier *.xml pas trop lourd (moins de 2Mo)
  • 1 fichier *.csv pas trop lourd (moins de 2Mo)
  • 1 fichier *.json pas trop lourd (moins de 2Mo)

Ouvrir chacun des fichiers avec le programme « textedit » ou « notepad ».

  • Constater les différences de rédaction du programme.

Laisser un commentaire