ในการลบระดับ (level) ใน MultiIndex โดยไม่ระบุระดับ (จะลบระดับสุดท้ายเป็นค่าเริ่มต้น) ให้ใช้เมธอด multiIndex.droplevel() โดยไม่ส่งอาร์กิวเมนต์
ขั้นตอนการทำงาน
1. นำเข้าไลบรารีที่จำเป็น
import pandas as pd
2. สร้าง MultiIndex
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]], names=['a', 'b', 'c', 'd'])
3. ลบระดับ (ค่าเริ่มต้น: ระดับสุดท้าย)
print("\nDropping a level...\n", multiIndex.droplevel())
ตัวอย่างโค้ดสมบูรณ์
import pandas as pd
# สร้าง MultiIndex
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]], names=['a', 'b', 'c', 'd'])
print("Multindex...\n", multiIndex)
# ลบระดับ (ค่าเริ่มต้น: ระดับสุดท้าย)
print("\nDropping a level...\n", multiIndex.droplevel())
ผลลัพธ์
Multindex... MultiIndex([( 5, 15, 25, 35), (10, 20, 30, 40)], names=['a', 'b', 'c', 'd'])
Dropping a level... MultiIndex([(15, 25, 35), (20, 30, 40)], names=['b', 'c', 'd'])
คำอธิบาย
droplevel() โดยไม่มีอาร์กิวเมนต์ จะลบ ระดับสุดท้าย (ระดับ 'd' ตำแหน่ง 3) เป็นค่าเริ่มต้น เหลือระดับ 'b', 'c', 'd'