การแทรกคอลัมน์ที่หายไป
ไฟล์ที่ extract มาจากปีหนึ่งไม่มีคอลัมน์ pub (ผู้เผยแพร่) แต่ทีมยังต้องการสแกนไฟล์ทั้งสองเป็นชุดข้อมูลเดียวกัน เลือก argument ที่เหมาะสมเพื่อให้ Polars แทรก null ในตำแหน่งที่คอลัมน์หายไป แทนที่จะเกิดข้อผิดพลาด
polars โหลดไว้เป็น pl และไดเรกทอรีอยู่ใน DRIFT_DIR ส่วน header ของแต่ละไฟล์จะถูกพิมพ์ให้ดู เพื่อให้เห็นความแตกต่างของ schema
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การปรับขนาดและเพิ่มประสิทธิภาพ Data Pipeline ด้วย Polars
คำแนะนำการฝึกหัด
- ใช้ glob pattern เพื่อสแกนไฟล์
seattle_*.csvทุกไฟล์ในDRIFT_DIR - เพิ่ม argument ที่เหมาะสมเพื่อให้ Polars แทรกค่า null สำหรับคอลัมน์ที่ไม่มีอยู่ในบางไฟล์
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Scan both yearly files as one combined dataset
combined = pl.scan_csv(
str(DRIFT_DIR / "____"),
try_parse_dates=True,
# Insert missing columns instead of failing on schema differences
____="____",
)
result = combined.select("date", "format", "title", "pub").collect()
print("First rows (from 2023 file):")
print(result.head(3))
print("\nLast rows (from 2024 file):")
print(result.tail(3))