Ce tutoriel explique comment importer efficacement plusieurs fichiers CSV dans un DataFrame Pandas en Python. Nous aborderons les fondamentaux de Pandas, la lecture de fichiers CSV uniques, l’importation de plusieurs fichiers et, enfin, leur concaténation en un seul DataFrame unifié.
Table des matières
- Qu’est-ce que Pandas ?
- Lecture d’un fichier CSV unique
- Lecture de plusieurs fichiers CSV
- Concaténation de DataFrames
- Gestion des erreurs potentielles
1. Qu’est-ce que Pandas ?
Pandas est une bibliothèque essentielle de l’écosystème de la science des données Python. Elle fournit des structures de données performantes et faciles à utiliser, ainsi que des outils d’analyse de données. La structure de données principale est le DataFrame, une structure de données étiquetée à deux dimensions similaire à une feuille de calcul ou à une table SQL. Pandas simplifie le travail avec des données structurées provenant de diverses sources, notamment les fichiers CSV, les feuilles de calcul Excel et les bases de données.
2. Lecture d’un fichier CSV unique
Avant de traiter plusieurs fichiers, lisons un seul fichier CSV :
import pandas as pd
file_path = 'your_file.csv' # Remplacez par le chemin de votre fichier
df = pd.read_csv(file_path)
print(df.head())
Ceci importe Pandas, spécifie le chemin du fichier, lit le CSV à l’aide de pd.read_csv()
et affiche les cinq premières lignes à l’aide de df.head()
.
3. Lecture de plusieurs fichiers CSV
Pour lire plusieurs fichiers CSV à partir d’un répertoire, nous utilisons le module glob
:
import pandas as pd
import glob
directory = 'path/to/your/csv/files/' # Remplacez par votre répertoire
csv_files = glob.glob(directory + '*.csv')
dfs = []
for file in csv_files:
try:
df = pd.read_csv(file)
dfs.append(df)
except pd.errors.EmptyDataError:
print(f"Avertissement : Fichier vide ignoré : {file}")
except pd.errors.ParserError:
print(f"Avertissement : Fichier avec erreurs d'analyse ignoré : {file}")
print(f"Nombre de DataFrames lus : {len(dfs)}")
Ce code trouve tous les fichiers CSV dans le répertoire spécifié, lit chacun d’eux dans un DataFrame et l’ajoute à une liste. Le bloc try-except
gère les erreurs potentielles telles que les fichiers vides ou les erreurs d’analyse, empêchant le script de planter.
4. Concaténation de DataFrames
Enfin, nous combinons les DataFrames individuels :
combined_df = pd.concat(dfs, ignore_index=True)
print(combined_df.head())
combined_df.to_csv('combined_data.csv', index=False) #Optionnel : Enregistrer dans un nouveau CSV
pd.concat(dfs, ignore_index=True)
concatène tous les DataFrames de la liste dfs
. ignore_index=True
réinitialise l’index pour un index propre et continu. La fonction to_csv()
optionnelle enregistre le résultat.
5. Gestion des erreurs potentielles
Des scripts robustes anticipent les problèmes. L’ajout d’une gestion des erreurs, comme indiqué dans la section de lecture de plusieurs fichiers, est crucial. Envisagez d’ajouter des vérifications de l’existence du répertoire et de gérer différents types d’erreurs de lecture de fichiers (par exemple, délimiteurs incorrects, colonnes manquantes). Cela garantit que votre script est plus fiable et moins sujet aux pannes inattendues.