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