# Pandas read\_csv() : lire des fichiers CSV dans Python

Python Pandas `read_csv()` est l’une des méthodes les plus utilisées pour **charger des données depuis des fichiers CSV et les stocker dans un DataFrame**. Les fichiers CSV (*Comma-separated Values*) sont un format largement utilisé pour stocker des données tabulaires et sont supportés par de nombreux programmes.

## Syntaxe de Python Pandas `read_csv()`

La fonction `pandas.read_csv()` crée un [Pandas DataFrame](https://www.ionos.com/fr-be/digitalguide/sites-internet/developpement-web/python-pandas-dataframe/) basé sur un fichier CSV. Elle peut recevoir **une grande variété de paramètres** qui spécifient le comportement de la fonction. Par souci de clarté, nous n’aborderons ici que les arguments les plus importants et les plus fréquemment utilisés. Pour une liste plus détaillée, consultez la [documentation Pandas](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.read_csv.html "Documentation Pandas sur read_csv()") dédiée.

La syntaxe de base de la fonction est simple et ressemble à ceci :

```python
import pandas as pd
df = pd.read_csv(filepath_or_buffer, sep=',', header='infer', names=None, index_col=None, usecols=None, dtype=None, ...)
```

### Paramètres pertinents

Vous trouverez ci-dessous un aperçu des paramètres les plus importants :

<table>
  <thead>
    <tr>
      <th><strong>Paramètres</strong></th>
      <th><strong>Responsabilité</strong></th>
      <th><strong>Valeur par défaut</strong></th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>`filepath_or_buffer`</td>
      <td>C’est une chaîne Python (chemin d’accès au fichier) ou un tampon de fichier comme une URL.</td>
      <td></td>
    </tr>
    <tr>
      <td>`sep`</td>
      <td>Il s’agit du séparateur entre les valeurs.</td>
      <td>`,`</td>
    </tr>
    <tr>
      <td>`header`</td>
      <td>Indique quelle ligne est utilisée comme en-tête.</td>
      <td>`infer` (première ligne)</td>
    </tr>
    <tr>
      <td>`names`</td>
      <td>Si `header=None` est défini, vous pouvez utiliser `names` pour spécifier une liste Python de noms de colonnes.</td>
      <td></td>
    </tr>
    <tr>
      <td>`index_col`</td>
      <td>Détermine quelle colonne sera utilisée comme index.</td>
      <td>`None`</td>
    </tr>
    <tr>
      <td>`usecols`</td>
      <td>Ce paramètre vous permet de sélectionner les colonnes que vous souhaitez charger dans le DataFrame.</td>
      <td>`None`</td>
    </tr>
    <tr>
      <td>`dtype`</td>
      <td>Indique le type de données des colonnes.</td>
      <td>`None`</td>
    </tr>
  </tbody>
</table>

## Guide pas à pas pour accéder aux fichiers CSV

En utilisant `pandas.read_csv()`, vous pouvez transférer des données depuis des fichiers CSV en quelques étapes seulement dans Python.

Dans les exemples qui suivent, nous allons travailler avec un fichier CSV selon le modèle suivant :

```none
1,Maxime Mortier,35,Paris,50000
2,Anna Frelon,29,Lyon,62000
3,Pierre Corbet,41,Marseille,58000
4,Lisa Beaufort,33,Toulouse,49000
5,Tom Verron,28,Bordeaux,52000
```

### Étape 1 : importer la bibliothèque Pandas

Dans un premier temps, vous devez importer la bibliothèque Pandas dans votre script Python.

```python
import pandas as pd
```

### Étape 2 : charger le fichier CSV

Vous pouvez maintenant charger votre fichier CSV avec la fonction Python Pandas `read_csv()`. Pour cela, il suffit de passer le **chemin de fichier** à la fonction. Dans l’exemple de code suivant, nous considérons un fichier nommé *data.csv*, qui est enregistré dans le même répertoire que le script :

```python
df = pd.read_csv(data.csv')
```

Le code sauvegarde le fichier dans un objet DataFrame `df`, avec lequel vous pouvez maintenant continuer à travailler. **Pandas interprète automatiquement la première ligne comme des en-têtes de colonne**, sauf indication contraire.

### Étape 3 : afficher le fichier CSV

Pour s’assurer que le fichier a été correctement chargé, il est utile de **visualiser les premières lignes du DataFrame**. Pour cela, vous pouvez utiliser la fonction `DataFrame.head()`. Elle affiche par défaut les cinq premières lignes du DataFrame. Cela permet d’avoir un aperçu rapide de la structure des données :

```python
print(df.head())
```

La sortie est alors la suivante :

```none
0 1 Max Mortier 35 Paris 50000
1 2 Anna Frelon 29 Lyon 62000
2 3 Pierre Corbet 41 Marseille 58000
3 4 Lisa Beaufort 33 Toulouse 49000
4 5 Tom Verron 28 Bordeaux 52000
```

### Étape 4 : modifier le nom des colonnes (facultatif)

Si votre fichier CSV n’a pas de ligne d’en-tête, vous pouvez définir manuellement les noms des colonnes :

```python
df = pd.read_csv('data.csv', header=None, names=['Colonne1', 'Colonne2', 'Colonne3', 'Colonne4', 'Colonne5'])
```

Dans cet exemple, les colonnes ont été nommées manuellement **Colonne1, Colonne2, Colonne3, Colonne4 et Colonne5**. Le code renvoie le résultat :

```none
Colonne1  Colonne2       Colonne3         Colonne4  Colonne5     Colonne6
0         1              Max Mortier      35        Paris        50000
1         2              Anna Frelon      29        Lyon         62000
2         3              Pierre Corbet    41        Marseille    58000
3         4              Lisa Beaufort    33        Toulouse     49000
4         5              Tom Verron       28        Bordeaux     52000
```

Note Le fichier CSV utilisé comme exemple n’avait pas beaucoup de données et était donc plutôt petit. Cependant, si ce n’est pas le cas et que vous avez un **fichier CSV très volumineux**, vous devez lire le fichier par morceaux afin d’éviter les problèmes de mémoire. Pour cela, vous pouvez utiliser le paramètre `pandas.read_csv()` `chunksize`, qui indique combien de lignes doivent être lues par itération. Vous pouvez utiliser Python loop for pour itérer sur les morceaux créés.


This is a markdown version of: [https://www.ionos.com/fr-be/digitalguide/sites-internet/developpement-web/python-pandas-read-csv/](https://www.ionos.com/fr-be/digitalguide/sites-internet/developpement-web/python-pandas-read-csv/) for AI/LLM consumption.