Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas - ลบหลายระดับใน MultiIndex ด้วยชื่อระดับ (multiIndex.droplevel)

ในการลบหลายระดับ (levels) ใน 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 multiple level...\n", multiIndex.droplevel(['a', 'd']))

ตัวอย่างโค้ดสมบูรณ์

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)

# ลบระดับ 'a' และ 'd' ด้วยชื่อ
print("\nDropping multiple level...\n", multiIndex.droplevel(['a', 'd']))

ผลลัพธ์

Multi-index... MultiIndex([( 5, 15, 25, 35), (10, 20, 30, 40)], names=['a', 'b', 'c', 'd'])
Dropping multiple level... MultiIndex([(15, 25), (20, 30)], names=['b', 'c'])

คำอธิบาย

droplevel(['a', 'd']) ลบระดับที่ชื่อ 'a' (ตำแหน่ง 0) และ 'd' (ตำแหน่ง 3) เหลือระดับ 'b' และ 'c' เท่านั้น