Spara data med pandas

ETL och ELT i Python

Jake Roach

Data Engineer

Spara data i en ETL-pipeline

Ladda data till en fil:

  • Säkerställer att datakonsumenter har stabil åtkomst till transformerad data
  • Sker som ett sista steg i en ETL-process, såväl som mellan enskilda steg
  • Fångar en "ögonblicksbild" av datan
ETL och ELT i Python

Ladda data till CSV-filer med pandas

Metoden .to_csv()

import pandas as pd

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

# Load data to a .csv file
stock_data.to_csv("stock_data.csv")
  • .to_csv anropas på DataFrame
  • Skriver DataFrame till sökvägen "stock_data.csv"
ETL och ELT i Python

Anpassa CSV-utdata

stock_data.to_csv("./stock_data.csv", header=True)
  • Tar True, False eller en lista med strängvärden
stock_data.to_csv("./stock_data.csv", index=True)
  • Tar True eller False
  • Avgör om kolumnen index skrivs till filen
stock_data.to_csv("./stock_data.csv", sep="|")
  • Tar ett strängvärde som används för att separera kolumner i filen
  • Tecknet | är ett vanligt alternativ

Har motsvarigheter:

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

Säkerställa databeständighet

Lagrades DataFrame korrekt i CSV-filen?

import pandas
import os  # Import the 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")

# Check that the path exists
file_exists = os.path.exists("stock_data.csv")
print(file_exists)
True
ETL och ELT i Python

Nu kör vi en övning!

ETL och ELT i Python

Preparing Video For Download...