Le format CSV
Qu'est ce qu'un fichier CSV ?⚓︎
Supposons que je veuille stocker dans un fichier des informations sur des villes, voici un court exemple (les vraies tables de données comportent bien sûr beaucoup plus d'informations) :
Ville | Pays | Population | Langue |
---|---|---|---|
Ottawa | Canada | 934 243 | Anglais |
Vilnius | Lituanie | 574 147 | Lituanien |
Lille | France | 233 098 | Français |
Cette table de données est structurée suivant 4 champs (Ville, Pays, Population, Langue) qui apparaissent en entête et elle contient actuellement 3 enregistrements (ici 3 villes).
Exercice 1
Nous voulons stocker les informations précédentes dans un fichier :
- ouvrez Libreoffice Calc ;
- saisissez les données du tableau précédent (copier-collez...) ;
- enregistrez votre document (sous le nom
pays.ods
) puis au format CSV (sous le nompays.csv
avec la virgule comme séparateur de champs) puis fermez-le dans Libreoffice ; - essayez d'ouvrir le fichier ods avec le bloc-note ;
- ouvrez le fichier CSV avec le bloc-note et observez sa structure ;
- modifiez la langue de Lille en "Ch'ti" dans le fichier CSV, sauvegardez ;
- ré-ouvrez le fichier CSV dans Libreoffice.
À retenir
Un fichier au format CSV est un simple fichier texte dans lequel sont stockés des enregistrements :
- la première ligne indique en général les intitulés des différents champs ;
- chaque ligne du fichier correspond à un enregistrement ;
- les valeurs des champs sont séparées par une virgule, d'où le nom CSV (comma separated values : valeurs séparées par des virgules !).
Pour créer un fichier CSV, vous pouvez :
- soit ouvrir un éditeur de texte (sous Windows, le bloc-note par exemple) et saisir vos données ;
- soit exporter un document de type tableur au format CSV ("Enregistrer sous...").
Avantages / inconvénients
Un fichier au format texte est plus léger mais il ne contient pas d'informations liées à la mise en forme de texte (gras, souligné, centré, etc.). Il peut être lu par n'importe quel éditeur de texte mais sa lecture peut devenir pénible (les données ne sont pas visualisables par colonne quand les valeurs sont de tailles différentes).
Virgule ou point-virgule ?⚓︎
Vous le savez sans doute, les notations anglo-saxonnes différent des nôtres (ou le contraire). Par exemple nous écrivons les nombres avec des virgules au lieu de les écrire avec des points (exemple : 10,5 au lieu de 10.5). Par conséquent, pour séparer des valeurs numériques, nous devons utiliser des points virgules au lieu des virgules. Par exemple :
- en notation anglo-saxonne :
Pays,Superficie (km²),Superficie en eau (%)
Belgique,30 688,0.82
Indonésie,1 904 569,4.88 - en notation française :
Pays;Superficie (km²);Superficie en eau (%)
Belgique;30 688;0,82
Indonésie;1 904 569;4,88
Autres séparateurs
Il existe d'autres séparateurs des données, comme par exemple les tabulations.
Trouver des fichiers de données⚓︎
Vous pouvez trouver de nombreux fichiers de données au format CSV sur Internet.
Exercice 2
- allez sur le site www.data.gouv.fr ;
- cliquez sur Données ;
- dans les critères de recherche, recherchez le filtre "Formats" et tapez CSV ;
- vous pourrez ensuite ouvrir un des fichiers obtenus avec le bloc-note et observer comment les données sont séparées.
Exercice 3 (source : D. Roche)
Ouvrez le fichier ville_point_virgule.csv à l'aide d'un tableur. En cas de problème avec votre tableur, voici une version "séparateur virgule" : ville_virgule.csv.
Comme vous pouvez le constater, nous avons 12 colonnes (et 36700 lignes si on ne compte pas l'entête !), voici la signification de ces colonnes :
- dep : numéro de département
- nom : nom de la commune
- cp : code postal
- nb_hab_... : nombre d'habitants en ...
- dens : densité de la population (habitants par kilomètre carré)
- surf : superficie de la commune en kilomètre carré
- long : longitude
- lat : latitude
- alt_min et alt_max : altitude minimale et maximale de la commune (il manque des données pour certains territoires d'outre-mer)
Cherchez l'altitude maximale et l'altitude minimale de votre commune.