插入缺少的欄位
有一年的擷取檔少了 pub 欄(publisher),但團隊仍想把兩個檔案當成同一個資料集來掃描。請選對參數,讓 Polars 在缺少欄位時插入 null,而不是直接失敗。
polars 已以 pl 載入,目錄在 DRIFT_DIR。每個檔案的表頭已為你列出,方便你看到結構(schema)差異。
本練習屬於課程
使用 Polars 擴充與最佳化資料管線
練習說明
- 使用萬用字元樣式,在
DRIFT_DIR中掃描每個seattle_*.csv檔案。 - 加上正確的參數,讓 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))