Pandas: วิธีจัดเรียง dataframes ตามลำดับตัวอักษร
คุณสามารถใช้วิธีการต่อไปนี้เพื่อเรียงลำดับแถวของ DataFrame แพนด้าตามตัวอักษร:
วิธีที่ 1: จัดเรียงตามคอลัมน์ตามตัวอักษร
#sort A to Z df. sort_values (' column1 ') #sort Z to A df. sort_values (' column1 ', ascending= False )
วิธีที่ 2: จัดเรียงตามหลายคอลัมน์ตามตัวอักษร
#sort by column1 from Z to A, then by column2 from A to Z df. sort_values ([' column1 ', ' column2 '], ascending=( False , True ))
ตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
ตัวอย่างที่ 1: จัดเรียงตามคอลัมน์ตามตัวอักษร
สมมติว่าเรามี DataFrame แพนด้าดังต่อไปนี้:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Spurs', 'Lakers', 'Nuggets', 'Hawks'], ' points ': [120, 108, 99, 104, 115]}) #view DataFrame print (df) team points 0 Mavs 120 1 Spurs 108 2 Lakers 99 3 Nuggets 104 4 Hawks 115
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อจัดเรียงแถวของ DataFrame ตามชื่อทีมจาก A ถึง Z :
#sort by team name A to Z
df_sorted = df. sort_values (' team ')
#view sorted DataFrame
print (df_sorted)
team points
4 Hawks 115
2 Lakers 99
0 Mavs 120
3 Nuggets 104
1 Spurs 108
โปรดทราบว่าขณะนี้แถวต่างๆ จะถูกจัดเรียงตามชื่อทีม AZ
นอกจากนี้เรายังสามารถเรียงลำดับจาก Z ถึง A :
#sort by team name Z to A
df_sorted = df. sort_values (' team ', ascending= False )
#view sorted DataFrame
print (df_sorted)
team points
1 Spurs 108
3 Nuggets 104
0 Mavs 120
2 Lakers 99
4 Hawks 115
และเรายังสามารถใช้ฟังก์ชัน reset_index() เพื่อรีเซ็ตค่าดัชนีใน DataFrame ที่เรียงลำดับ:
#sort by team name A to Z and reset index
df_sorted = df. sort_values (' team '). reset_index (drop= True )
#view sorted DataFrame
print (df_sorted)
team points
0 Hawks 115
1 Lakers 99
2 Mavs 120
3 Nuggets 104
4 Spurs 108
ตัวอย่างที่ 2: จัดเรียงตามหลายคอลัมน์ตามตัวอักษร
สมมติว่าเรามี DataFrame แพนด้าดังต่อไปนี้:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' conference ': ['West', 'West', 'West', 'East', 'East'],
' team ': ['Mavs', 'Spurs', 'Lakers', 'Heat', 'Hawks'],
' points ': [120, 108, 99, 104, 115]})
#view DataFrame
print (df)
conference team points
0 West Mavs 120
1 West Spurs 108
2 West Lakers 99
3 East Heat 104
4 East Hawks 115
ไวยากรณ์ต่อไปนี้สามารถใช้เพื่อจัดเรียงบรรทัดของ DataFrame ตามชื่อการประชุมจาก A ถึง Z จากนั้นตามชื่อทีมจาก Z ถึง A:
#sort by conference name A to Z, then by team name Z to A
df_sorted = df. sort_values ([' conference ', ' team '], ascending=( True , False ))
#view sorted DataFrame
print (df_sorted)
conference team points
3 East Heat 104
4 East Hawks 115
1 West Spurs 108
0 West Mavs 120
2 West Lakers 99
แถวจะถูกจัดเรียงตามชื่อการประชุม AZ จากนั้นตามชื่อทีม ZA
หมายเหตุ : คุณสามารถดูเอกสารฉบับเต็มของฟังก์ชัน pandas sort_values() ได้ที่นี่
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีดำเนินการทั่วไปอื่น ๆ ในแพนด้า:
นุ่น: วิธีจัดเรียงตามวันที่
Pandas: วิธีจัดเรียงคอลัมน์ตามชื่อ
Pandas: วิธีจัดเรียงตามทั้งดัชนีและคอลัมน์