Data bewaren met pandas

ETL en ELT in Python

Jake Roach

Data Engineer

Data behouden in een ETL-pijplijn

Data naar een bestand laden:

  • Zorgt dat afnemers stabiele toegang hebben tot getransformeerde data
  • Gebeurt als laatste stap in ETL, en ook tussen losse stappen
  • Legt een "momentopname" van de data vast
ETL en ELT in Python

Data naar CSV-bestanden laden met pandas

Methode .to_csv()

import pandas as pd

# Data-extractie en -transformatie
raw_data = pd.read_csv("raw_stock_data.csv")
stock_data = raw_data.loc[raw_data["open"] > 100, ["timestamps", "open"]]

# Laad data naar een .csv-bestand
stock_data.to_csv("stock_data.csv")
  • .to_csv aangeroepen op de DataFrame
  • Schrijft DataFrame naar pad "stock_data.csv"
ETL en ELT in Python

CSV-uitvoer aanpassen

stock_data.to_csv("./stock_data.csv", header=True)
  • Accepteert True, False of een lijst met strings
stock_data.to_csv("./stock_data.csv", index=True)
  • Accepteert True of False
  • Bepaalt of de index-kolom wordt weggeschreven
stock_data.to_csv("./stock_data.csv", sep="|")
  • Accepteert een string om kolommen in het bestand te scheiden
  • Het teken | is een veelgebruikte optie

Heeft tegenhangers:

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

Zeker zijn van databestendigheid

Is de DataFrame correct opgeslagen in het CSV-bestand?

import pandas
import os  # Importeer de os-module

# Extract, transform and load data
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")

# Controleer of het pad bestaat
file_exists = os.path.exists("stock_data.csv")
print(file_exists)
True
ETL en ELT in Python

Laten we oefenen!

ETL en ELT in Python

Preparing Video For Download...