Pérenniser les données avec pandas

ETL et ELT en Python

Jake Roach

Data Engineer

Pérenniser les données dans un pipeline ETL

Chargement des données vers un fichier :

  • Garantit aux utilisateurs un accès stable aux données transformées
  • S'effectue en dernière étape d'un ETL, et entre des étapes distinctes
  • Capture un « instantané » des données
ETL et ELT en Python

Charger des données en CSV avec pandas

Méthode .to_csv()

import pandas as pd

# Extraction et transformation
raw_data = pd.read_csv("raw_stock_data.csv")
stock_data = raw_data.loc[raw_data["open"] > 100, ["timestamps", "open"]]

# Charger les données dans un fichier .csv
stock_data.to_csv("stock_data.csv")
  • .to_csv appelée sur le DataFrame
  • Écrit le DataFrame vers le chemin "stock_data.csv"
ETL et ELT en Python

Personnaliser la sortie CSV

stock_data.to_csv("./stock_data.csv", header=True)
  • Accepte True, False ou une liste de chaînes
stock_data.to_csv("./stock_data.csv", index=True)
  • Accepte True ou False
  • Indique si la colonne index est écrite dans le fichier
stock_data.to_csv("./stock_data.csv", sep="|")
  • Accepte une chaîne utilisée pour séparer les colonnes dans le fichier
  • Le caractère | est une option courante

Possède des équivalents :

  • .to_parquet()
  • .to_json()
  • .to_sql()
1 https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_csv.html
ETL et ELT en Python

Garantir la persistance des données

Le DataFrame a-t-il bien été enregistré dans le fichier CSV ?

import pandas
import os  # Importer le module os

# Extraire, transformer et charger
raw_data = pd.read_csv("raw_stock_data.csv")
stock_data = raw_data.loc[raw_data["open"] > 100, ["timestamps", "open"]]
stock_data.to_csv("stock_data.csv")

# Vérifier que le chemin existe
file_exists = os.path.exists("stock_data.csv")
print(file_exists)
True
ETL et ELT en Python

Passons à la pratique !

ETL et ELT en Python

Preparing Video For Download...