Python:
การทำงานกับ CSV
วิธีการ:
Python ให้โมดูลในตัว csv
สำหรับจัดการกับไฟล์ CSV ทำให้การอ่านจากและเขียนลงไปง่าย สำหรับการจัดการข้อมูลที่ซับซ้อนและแข็งแกร่งมากขึ้น ไลบรารีของบุคคลที่สามอย่าง pandas
ได้รับความนิยมอย่างสูง
การใช้งานโมดูล csv
การอ่านไฟล์ CSV
import csv
with open('sample.csv', mode='r') as file:
csv_reader = csv.reader(file)
for row in csv_reader:
print(row)
สมมติว่า sample.csv
มีข้อมูลดังนี้:
name,age,city
John,22,New York
Jane,28,Los Angeles
ผลลัพธ์:
['name', 'age', 'city']
['John', '22', 'New York']
['Jane', '28', 'Los Angeles']
การเขียนไฟล์ CSV
import csv
rows = [['name', 'age', 'city'], ['Jack', '33', 'Chicago'], ['Emily', '41', 'Denver']]
with open('output.csv', mode='w', newline='') as file:
writer = csv.writer(file)
writer.writerows(rows)
สร้างหรือเขียนทับ output.csv
ด้วย:
name,age,city
Jack,33,Chicago
Emily,41,Denver
การใช้ pandas
สำหรับ CSV
pandas
เป็นไลบรารีทรงพลังสำหรับการจัดการข้อมูลที่ทำให้การทำงานกับไฟล์ CSV และรูปแบบข้อมูลอื่นๆ ง่ายขึ้น
ติดตั้ง pandas
pip install pandas
การอ่านไฟล์ CSV ด้วย pandas
import pandas as pd
df = pd.read_csv('sample.csv')
print(df)
ผลลัพธ์:
name age city
0 John 22 New York
1 Jane 28 Los Angeles
การเขียนไฟล์ CSV ด้วย pandas
import pandas as pd
df = pd.DataFrame({'name': ['Jack', 'Emily'], 'age': [33, 41], 'city': ['Chicago', 'Denver']})
df.to_csv('output_pandas.csv', index=False)
สร้างหรือเขียนทับ output_pandas.csv
ด้วย:
name,age,city
Jack,33,Chicago
Emily,41,Denver