Để trả về MultiIndex với level cuối cùng bị xóa (hành vi mặc định), hãy sử dụng phương thức multiIndex.droplevel() không truyền tham số.
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'])
3. Xóa level mặc định (level cuối)
print("\nXóa một level (mặc định)...\n", multiIndex.droplevel())
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'])
print("MultiIndex...\n", multiIndex)
# Xóa level mặc định (level cuối cùng, vị trí -1)
print("\nXóa một level (mặc định)...\n", multiIndex.droplevel())
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 (mặc định)...
MultiIndex([(15, 25, 35), (20, 30, 40)], names=['b', 'c', 'd'])
Giải thích: Không truyền tham số → xóa level cuối cùng (vị trí -1, level 'd'). Còn lại 'b', 'c', 'd' (tên level dịch chuyển). Tương đương droplevel(-1) hoặc droplevel(len(names)-1).