Écrire un tableau dans un fichier CSV en Python

Muhammad Waiz Khan 30 janvier 2023
  1. Python Ecrire un tableau dans un fichier CSV en Python en utilisant la méthode numpy.savetxt()
  2. Écrire un tableau dans un fichier CSV en Python en utilisant la méthode Dataframe.to_csv()
  3. Ecriture d’un tableau dans un fichier CSV en Python à l’aide de la méthode writer.writerows()
Écrire un tableau dans un fichier CSV en Python

Dans ce didacticiel, nous examinerons différentes méthodes pour écrire les données du tableau dans un fichier CSV (comma-separated values) en Python. Supposons que nous ayons un tableau contenant des données traitées, la sortie d’un algorithme, les poids d’un modèle, etc., et nous souhaitons les enregistrer pour une utilisation future.

Le fichier CSV est couramment utilisé pour enregistrer les données du tableau, car son format permet d’enregistrer les données sous forme de tableau structuré. Nous pouvons écrire un tableau dans un fichier CSV en utilisant les méthodes suivantes en Python.

Python Ecrire un tableau dans un fichier CSV en Python en utilisant la méthode numpy.savetxt()

La méthode numpy.savetxt(fname, array, delimiter=) enregistre le tableau d’entrée dans le fichier - fname. L’argument delimiter est la valeur utilisée comme séparateur pour séparer la valeur indépendante dans les données.

Pour enregistrer le tableau dans un fichier CSV, il faudra passer le fname avec l’extension .csv et utiliser la virgule , comme séparateur. L’exemple de code ci-dessous montre comment utiliser numpy.savetxt() pour écrire un tableau dans un fichier CSV en Python.

import numpy as np

a = np.array([[1, 4, 2], [7, 9, 4], [0, 6, 2]])
np.savetxt("myfile.csv", a, delimiter=",")

Écrire un tableau dans un fichier CSV en Python en utilisant la méthode Dataframe.to_csv()

La méthode Dataframe.to_csv(path, sep,...) enregistre un DataFrame dans un fichier et un chemin spécifié dans l’argument path. L’argument sep est le séparateur ou délimiteur, qui sera utilisé pour séparer les valeurs; la valeur par défaut de l’argument sep est la virgule ,.

On peut écrire un tableau dans un fichier CSV en le convertissant d’abord en DataFrame puis en fournissant le chemin du fichier CSV comme argument path en utilisant la méthode Dataframe.to_csv(). Puisque la valeur par défaut de l’argument sep est ,, nous devons fournir l’argument DataFrame et path à la méthode Dataframe.to_csv().

L’exemple de code ci-dessous montre comment utiliser la méthode Dataframe.to_csv() pour écrire le tableau dans un fichier CSV en Python.

import pandas as pd

df = pd.DataFrame(myarray)
df.to_csv("myfile.csv")

Ecriture d’un tableau dans un fichier CSV en Python à l’aide de la méthode writer.writerows()

Le writer.writerows(rows) prend l’argument rows sous la forme d’un tableau ou d’une liste 2D et l’écrit dans l’objet fichier du writer. L’objet writer est renvoyé par la méthode csv.writer(file), qui prend un objet fichier file en entrée et renvoie l’objet writer en sortie.

Pour écrire un tableau dans un fichier CSV, on passe d’abord l’objet fichier CSV à la méthode csv.writer() puis on utilise l’objet writer retourné par la méthode csv.writer() pour écrire le tableau dans le fichier CSV.

L’exemple de code ci-dessous montre comment utiliser la méthode writer.writerows() pour écrire le tableau dans un fichier CSV en Python.

import csv
import numpy

a = numpy.array([[1, 4, 2], [7, 9, 4], [0, 6, 2]])

with open("myfile.csv", "w", newline="") as file:
    mywriter = csv.writer(file, delimiter=",")
    mywriter.writerows(a)

Pour lire le tableau à partir du fichier CSV, on peut utiliser l’objet writer de la méthode csv.reader(file) pour lire le tableau à partir de l’objet fichier file du fichier CSV en Python.

L’exemple de code ci-dessous montre comment utiliser la méthode csv.reader() pour lire le tableau à partir du fichier CSV.

import csv

with open("myfile.csv", "r", newline="") as file:
    myreader = csv.reader(file, delimiter=",")
    for rows in myreader:
        print(rows)

Production:

['1', '4', '2']
['7', '9', '4']
['0', '6', '2']

Article connexe - Python Array