นับความถี่ของค่าในคอลัมน์ (Count) แล้วเรียง DataFrame ตามความถี่จากมากไปน้อย (ascending=False)
ตัวอย่างโค้ด
import pandas as pd
dataFrame = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'BMW', 'Mustang', 'Mercedes', 'Lexus'],
"Reg_Price": [7000, 1500, 5000, 8000, 9000, 2000],
"Place": ['Pune', 'Delhi', 'Mumbai', 'Hyderabad', 'Bangalore', 'Chandigarh']
})
print("DataFrame ...\n", dataFrame)
# Count frequency per Car, sort descending
dataFrame = dataFrame.groupby(['Car'])['Reg_Price'].count().reset_index(name='Count').sort_values(['Count'], ascending=False)
print("\nSorting DataFrame ...\n", dataFrame)
ผลลัพธ์
Sorting DataFrame ...
Car Count
0 BMW 2
1 Lexus 2
2 Mercedes 1
3 Mustang 1
คำอธิบาย
groupby(['Car'])['Reg_Price'].count()นับจำนวนแถวต่อ Car.reset_index(name='Count')แปลงกลับเป็น DataFrame คอลัมน์ Count.sort_values(['Count'], ascending=False)เรียง Count มากไปน้อย- BMW และ Lexus ทั้งคู่ 2 ครั้ง (Stable sort คงลำดับเดิม)