Để lấy tuple chứa độ dài của từng cấp độ trong MultiIndex, chúng ta sử dụng thuộc tính MultiIndex.levshape.
Các bước thực hiện
1. Import thư viện
import pandas as pd
2. Tạo MultiIndex
arrays = [[1, 2, 3, 4, 5], ['John', 'Tim', 'Jacob', 'Chris', 'Keiron']]
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))
3. Lấy tuple độ dài cấp độ
print("\nTuple độ dài các cấp độ:\n", multiIndex.levshape)
Ví dụ hoàn chỉnh
import pandas as pd
arrays = [[1, 2, 3, 4, 5], ['John', 'Tim', 'Jacob', 'Chris', 'Keiron']]
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))
print("MultiIndex:\n", multiIndex)
print("\nSố cấp độ (nlevels):\n", multiIndex.nlevels)
print("\nCác cấp độ (levels):\n", multiIndex.levels)
print("\nTuple độ dài cấp độ (levshape):\n", multiIndex.levshape)
Kết quả đầu ra
MultiIndex: MultiIndex([(1, 'John'), (2, 'Tim'), (3, 'Jacob'), (4, 'Chris'), (5, 'Keiron')], names=['ranks', 'student']) Số cấp độ (nlevels): 2 Các cấp độ (levels): [[1, 2, 3, 4, 5], ['Chris', 'Jacob', 'John', 'Keiron', 'Tim']] Tuple độ dài cấp độ (levshape): (5, 5)
Giải thích
levshapetrả về tuple(len(level_0), len(level_1), ...).- Ví dụ:
(5, 5)nghĩa là cấp độ 0 có 5 giá trị duy nhất, cấp độ 1 có 5 giá trị duy nhất. - Khác với
shapecủa MultiIndex (số hàng, số cấp độ):(5, 2).
Các thuộc tính liên quan
| Thuộc tính | Mô tả | Ví dụ |
|---|---|---|
nlevels | Số lượng cấp độ | 2 |
levels | Danh sách Index của mỗi cấp độ | [[1,2,3,4,5], ['Chris',...]] |
levshape | Tuple độ dài từng cấp độ | (5, 5) |
codes | Vị trí của mỗi giá trị trong levels | [[0,1,2,3,4], [2,4,1,0,3]] |