Utiliser un fichier CSV
- Fiche de cours
- Quiz
- Profs en ligne
- Videos
- Application mobile
Savoir récupérer des données d’un fichier CSV.
- Pour utiliser un fichier CSV, on peut utiliser un tableur et des filtres pour récupérer des éléments.
- Pour les fichiers CSV plus imposants, on utilise Python avec la bibliothèque CSV ou la bibliothèque Pandas, qui permettent de parcourir les éléments du fichier mais aussi de créer un tableau contenant tous les éléments souhaités.
- Notion de tableau
- Notion de données structurées et du format CSV
- Utilisation de la méthode append() pour rajouter un élément à la fin d’un tableau
Pour récupérer une ligne qui contient un descripteur (ou attribut) précis, il faudra utiliser un filtre. C’est très utile lorsque le fichier contient plusieurs centaines ou milliers de lignes.
Il suffit de renseigner la valeur que l’on recherche, et le tableur extrait toutes lignes qui contiennent la valeur entrée !
Python contient une bibliothèque (qu’il faudra importer) nommée CSV, qui permet de travailler les fichiers CSV.
Cette bibliothèque permet de lire le fichier CSV via la méthode csv.reader(fichier, delimiter=',').
« ',' » indique que le délimiteur choisi est la virgule. Pour un fichier CSV créé par Excel, il faut un point-virgule (« ';' »).
Ce programme Python va utiliser les données d’un fichier CSV pour créer un tableau.
import csv | Importation de la bibliothèque CSV |
table=[ ] | Création du tableau vide |
with open("nomfichier.csv",'r') as fichier: | L’ouverture du fichier en mode 'r' signifie en lecture |
donnee=csv.reader(fichier, delimiter=',') | Lecture du fichier CSV |
for
ligne in donnee: table.append() |
Utilisation de la boucle pour créer le tableau |
Il y a d’autres modes d’ouverture de fichier : le mode 'w' permet l’écriture !
Il existe aussi la bibliothèque Pandas, qui permet d’utiliser plus simplement un fichier CSV en tapant : pandas.read_csv('fichier.csv',sep=';').
Voici ci-dessous le fichier informaticienne.csv ouvert sous Excel.
Python permet de créer la table suivante.
Les colonnes sont indexées par nom,
prenom, nee en.
Les lignes sont indexées
par 0, 1, 2, 3.
Pour accéder à un
élément, on utilise la
méthode loc[indice ligne, 'indice colonne'].
Ainsi table.loc[1,'nom'] retourne
'Lovelace'.
- Il est préférable d’utiliser Python plutôt qu’un tableur car les données des fichiers CSV peuvent rapidement dépasser 50 000 lignes, comme c’est par exemple le cas pour les plus petits fichiers du site gouvernemental d’opendata : www.data.gouv.fr.
- Lors de l’écriture d’un descripteur, il faut faire attention à la casse et ne pas confondre majuscule et minuscule. Attention aux accents.
Vous avez obtenu75%de bonnes réponses !