Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python Pandas - Trả về Index với level cụ thể bị xóa (theo vị trí)

Để trả về MultiIndex với một level cụ thể bị xóa theo vị trí (position), hãy sử dụng phương thức multiIndex.droplevel() với tham số là vị trí số nguyên.

Các bước thực hiện

1. Import thư viện cần thiết

import pandas as pd

2. Tạo MultiIndex có tên level

multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]], names=['a', 'b', 'c', 'd'])

4. Xóa level tại vị trí 3 (level 'd')

print("\nXóa một level...\n", multiIndex.droplevel(3))

Ví dụ hoàn chỉnh

import pandas as pd

# Tạo MultiIndex có tên level
multiIndex = pd.MultiIndex.from_arrays([[5, 10], [15, 20], [25, 30], [35, 40]], names=['a', 'b', 'c', 'd'])

# Hiển thị MultiIndex
print("MultiIndex...\n", multiIndex)

# Xóa level tại vị trí 3 (0-based: level 'd')
print("\nXóa một level...\n", multiIndex.droplevel(3))

Kết quả đầu ra

MultiIndex...
MultiIndex([( 5, 15, 25, 35), (10, 20, 30, 40)], names=['a', 'b', 'c', 'd'])
Xóa một level...
MultiIndex([( 5, 15, 25), (10, 20, 30)], names=['a', 'b', 'c'])

Giải thích: Vị trí 3 (0-based) tương ứng level 'd' (giá trị 35/40). Sau khi xóa, còn 3 level: 'a', 'b', 'c'. Vị trí âm được hỗ trợ: -1 xóa level cuối, -2 xóa level倒 số 2, v.v.