โจทย์
มีไฟล์ SalesRecords.csv ต้องการสร้าง 3 ไฟล์ CSV แยกตามชื่อรถยนต์: BMW.csv, Lexus.csv, Jaguar.csv
วิธีทำ
- อ่านไฟล์ CSV ต้นทางด้วย
pd.read_csv() - ใช้
groupby()จัดกลุ่มตามคอลัมน์Carแล้วบันทึกแต่ละกลุ่มเป็นไฟล์ CSV แยกต่างหาก:for (car), group in dataFrame.groupby(['Car']): group.to_csv(f'{car}.csv', index=False)
โค้ดเต็ม
import pandas as pd
# อ่านไฟล์ CSV ต้นทาง
dataFrame = pd.read_csv("C:\\Users\\amit_\\Desktop\\SalesRecords.csv")
print("\nInput CSV file = \n", dataFrame)
# แยกไฟล์ตามชื่อรถ
for (car), group in dataFrame.groupby(['Car']):
group.to_csv(f'{car}.csv', index=False)
# แสดงผลไฟล์ที่สร้าง
print("\nCSV 1 = \n", pd.read_csv("BMW.csv"))
print("\nCSV 2 = \n", pd.read_csv("Lexus.csv"))
print("\nCSV 3 = \n", pd.read_csv("Jaguar.csv"))
ผลลัพธ์
ได้ 3 ไฟล์ CSV แยกตามแบรนด์รถ BMW, Lexus, Jaguar บันทึกไว้ในโฟลเดอร์โปรเจกต์