การบันทึกข้อมูลถาวรด้วย pandas

ETL and ELT ใน Python

Jake Roach

Data Engineer

การบันทึกข้อมูลถาวรใน ETL pipeline

การโหลดข้อมูลไปยังไฟล์:

  • ช่วยให้ผู้ใช้ข้อมูลเข้าถึงข้อมูลที่แปลงแล้วได้อย่างเสถียร
  • เกิดขึ้นเป็นขั้นตอนสุดท้ายของกระบวนการ ETL รวมถึงระหว่างขั้นตอนย่อยต่างๆ
  • จับภาพ "สแนปช็อต" ของข้อมูล
ETL and ELT ใน Python

การโหลดข้อมูลไปยังไฟล์ CSV ด้วย pandas

เมธอด .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 บน DataFrame
  • เขียน DataFrame ไปยังพาธ "stock_data.csv"
ETL and ELT ใน Python

การปรับแต่งผลลัพธ์ไฟล์ CSV

stock_data.to_csv("./stock_data.csv", header=True)
  • รับค่า True, False หรือลิสต์ของสตริง
stock_data.to_csv("./stock_data.csv", index=True)
  • รับค่า True หรือ False
  • กำหนดว่าจะเขียนคอลัมน์ index ลงในไฟล์หรือไม่
stock_data.to_csv("./stock_data.csv", sep="|")
  • รับค่าสตริงที่ใช้คั่นคอลัมน์ในไฟล์
  • อักขระ | เป็นตัวเลือกที่ใช้กันทั่วไป

มีเมธอดที่คล้ายกัน:

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

การตรวจสอบความถาวรของข้อมูล

DataFrame ถูกบันทึกลงไฟล์ CSV อย่างถูกต้องหรือไม่?

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 and ELT ใน Python

มาฝึกกันเถอะ!

ETL and ELT ใน Python

Preparing Video For Download...