Lire CSV en NumPy Array en Python

Manav Narula 6 février 2023
  1. Utilisez la fonction numpy.genfromtxt() pour lire les données CSV dans un tableau NumPy
  2. Utilisez un DataFrame pandas pour lire des données CSV dans un tableau NumPy
  3. Utilisez le module csv pour lire les données CSV dans un tableau NumPy
Lire CSV en NumPy Array en Python

Ce didacticiel expliquera comment lire les données d’un fichier CSV et les stocker dans un tableau numpy.

Utilisez la fonction numpy.genfromtxt() pour lire les données CSV dans un tableau NumPy

La fonction genfromtxt() est fréquemment utilisée pour charger des données à partir de fichiers texte. Nous pouvons lire les données des fichiers CSV en utilisant cette fonction et les stocker dans un tableau numpy. Cette fonction a de nombreux arguments disponibles, ce qui facilite le chargement des données dans le format souhaité. Nous pouvons spécifier le délimiteur, traiter les valeurs manquantes, supprimer les caractères spécifiés et spécifier le type de données des données en utilisant les différents arguments de cette fonction.

Par example,

from numpy import genfromtxt

data = genfromtxt("sample.csv", delimiter=",", skip_header=1)
print(data)

Production:

[[1. 2. 3.]
 [4. 5. 6.]]

De nombreuses autres fonctions en sont dérivées, comme recfromtxt() et recfromcsv() qui peuvent exécuter la même fonction mais ont des valeurs par défaut différentes.

Dans le code suivant, nous lirons les données d’un fichier CSV en utilisant le fichier recfromcsv().

import numpy as np

data = np.recfromcsv("sample.csv", skip_header=0)
print(data)

Production:

[(1, 2, 3) (4, 5, 6)]

Notez que nous n’avons pas eu à spécifier le délimiteur sous forme de virgule et la valeur différente pour spécifier la ligne d’en-tête.

Utilisez un DataFrame pandas pour lire des données CSV dans un tableau NumPy

Nous pouvons également utiliser un DataFrame pandas pour lire les données CSV dans un tableau. Pour cela, nous allons lire les données dans un DataFrame et ensuite les convertir en un tableau NumPy en utilisant la fonction values() de la bibliothèque pandas.

Le code suivant implémente cela.

from pandas import read_csv

df = read_csv("sample.csv")
data = df.values
print(data)

Production:

[[1 2 3]
 [4 5 6]]

Utilisez le module csv pour lire les données CSV dans un tableau NumPy

Le module csv permet de lire et d’écrire efficacement des données dans des fichiers CSV. Cette méthode lira les données d’un fichier CSV à l’aide de ce module et les stockera dans une liste. Nous procéderons ensuite à la conversion de cette liste en un tableau numpy.

Le code ci-dessous explique cela.

import csv
import numpy as np

with open("sample.csv", "r") as f:
    data = list(csv.reader(f, delimiter=";"))

data = np.array(data)
print(data)

Production:

[['1,2,3']
 ['4,5,6']]
Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn