โจทย์
DataFrame ตัวอย่าง:
Id Name 0 1 Adam 1 2 Michael 2 3 David 3 4 Jack 4 5 Peterต้องการเรียงตาม Name จาก Z-A (descending)
วิธีแก้
ใช้
df.sort_values(by='Name', ascending=False)โค้ดตัวอย่าง
import pandas as pd data = {'Id': [1,2,3,4,5], 'Name': ['Adam','Michael','David','Jack','Peter']} df = pd.DataFrame(data) print("Before sorting:\n", df) print("After sorting:\n", df.sort_values(by='Name', ascending=False))ผลลัพธ์
Before sorting: Id Name 0 1 Adam 1 2 Michael 2 3 David 3 4 Jack 4 5 Peter After sorting: Id Name 4 5 Peter 1 2 Michael 3 4 Jack 2 3 David 0 1 Adamคำอธิบาย
sort_values(by='Name', ascending=False): เรียงตามคอลัมน์ Name จากมากไปน้อย (Z-A)- คืนค่า DataFrame ใหม่ (ไม่เปลี่ยนตัวเดิม ต้อง assign กลับ:
df = df.sort_values(...)) - รองรับหลายคอลัมน์:
sort_values(by=['col1', 'col2'], ascending=[True, False])