สุดยอดคู่มือ: วิธีอ่านไฟล์ csv ด้วย pandas


ไฟล์ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค) เป็นวิธีจัดเก็บข้อมูลที่ใช้กันทั่วไปวิธีหนึ่ง

โชคดีที่ฟังก์ชัน pandas read_csv() ช่วยให้คุณอ่านไฟล์ CSV ใน Python ได้อย่างง่ายดายในเกือบทุกรูปแบบที่คุณต้องการ

บทช่วยสอนนี้จะอธิบายหลายวิธีในการอ่านไฟล์ CSV ใน Python โดยใช้ไฟล์ CSV ต่อไปนี้ชื่อ “data.csv” :

 playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

ตัวอย่างที่ 1: อ่านไฟล์ CSV ลงใน DataFrame ของ pandas

รหัสต่อไปนี้แสดงวิธีการอ่านไฟล์ CSV ลงใน DataFrame ของแพนด้า:

 #import CSV file as DataFrame
df = pd. read_csv ('data.csv')

#view DataFrame
df

        playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

ตัวอย่างที่ 2: อ่านคอลัมน์เฉพาะจากไฟล์ CSV

รหัสต่อไปนี้แสดงวิธีการอ่านเฉพาะคอลัมน์ที่มีป้ายกำกับ “playerID” และ “points” จากไฟล์ CSV ลงใน DataFrame ของ pandas:

 #import only specific columns from CSV file
df = pd. read_csv ('data.csv', usecols=[' playerID ',' points '])

#view DataFrame
df

	playerID points
0 1 26
1 2 19
2 3 24
3 4 22

คุณยังสามารถระบุดัชนีคอลัมน์เพื่ออ่านลงใน DataFrame ของแพนด้า:

 #import only specific columns from CSV file
df = pd. read_csv (' data.csv ', usecols=[ 0,1 ])

#view DataFrame
df

        playerID team
0 1 Lakers
1 2 Mavs
2 3 Bucks
3 4 Spurs

ตัวอย่างที่ 3: ระบุแถวส่วนหัวเมื่อนำเข้าไฟล์ CSV

ในบางกรณี แถวส่วนหัวอาจไม่ใช่แถวแรกในไฟล์ CSV

ตัวอย่างเช่น ลองพิจารณาไฟล์ CSV ต่อไปนี้ซึ่งมีแถวส่วนหัวปรากฏในแถวที่สอง:

 random,data,values
playerID,team,points
1,Lakers,26
2,Mavs,19
3,Bucks,24
4,Spurs,22

หากต้องการอ่านไฟล์ CSV นี้ลงใน DataFrame ของ pandas เราสามารถระบุ header=1 ได้ดังนี้:

 #import from CSV file and specify that header starts on second row
df = pd. read_csv ('data.csv', header= 1 )

#view DataFrame
df

        playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

ตัวอย่างที่ 4: ข้ามแถวเมื่อนำเข้าไฟล์ CSV

คุณยังสามารถข้ามแถวได้อย่างง่ายดายเมื่อนำเข้าไฟล์ CSV โดยใช้อาร์กิวเมนต์ skikrows

ตัวอย่างเช่น รหัสต่อไปนี้แสดงวิธีละเว้นบรรทัดที่สองเมื่อนำเข้าไฟล์ CSV:

 #import from CSV file and skip second row
df = pd. read_csv ('data.csv', skiprows=[ 1 ] )

#view DataFrame
df

        playerID team points
0 2 Mavs 19
1 3 Bucks 24
2 4 Spurs 22

และโค้ดต่อไปนี้แสดงวิธีละเว้นบรรทัดที่สอง และ สามเมื่อนำเข้าไฟล์ CSV:

 #import from CSV file and skip second and third rows
df = pd. read_csv ('data.csv', skiprows=[ 1,2 ] )

#view DataFrame
df

        playerID team points
1 3 Bucks 24
2 4 Spurs 22

ตัวอย่างที่ 5: อ่านไฟล์ CSV ด้วยตัวคั่นที่กำหนดเอง

บางครั้งคุณอาจมีไฟล์ CSV ที่มีตัวคั่นที่ไม่ใช่ลูกน้ำ

ตัวอย่างเช่น สมมติว่าไฟล์ CSV ของเรามีขีดล่างเป็นตัวคั่น:

 playerID_team_points
1_Lakers_26
2_Mavs_19
3_Bucks_24
4_Spurs_22

หากต้องการอ่านไฟล์ CSV นี้ในรูปแบบแพนด้า เราสามารถใช้อาร์กิวเมนต์ sep เพื่อระบุตัวคั่นที่จะใช้เมื่ออ่านไฟล์:

 #import from CSV file and specify delimiter to use
df = pd. read_csv ('data.csv', sep=' _ ')

#view DataFrame
df

	playerID team points
0 1 Lakers 26
1 2 Mavs 19
2 3 Bucks 24
3 4 Spurs 22

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการงานแพนด้าทั่วไปอื่นๆ:

วิธีอ่านไฟล์ข้อความด้วย Pandas
วิธีอ่านไฟล์ Excel ด้วย Pandas
วิธีอ่านไฟล์ TSV ด้วย Pandas
วิธีอ่านตาราง HTML ด้วย Pandas

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *