Computer >> Máy Tính >  >> Lập trình >> Python

Python Pandas - Nhận mã (vị trí của từng nhãn) trong MultiIndex

Để nhận mã (vị trí của từng nhãn) trong MultiIndex, hãy sử dụng MultiIndex.codes tài sản ở Pandas. Đầu tiên, hãy nhập các thư viện được yêu cầu -

import pandas as pd

MultiIndex là một đối tượng chỉ mục đa cấp hoặc phân cấp cho các đối tượng gấu trúc. Tạo mảng -

arrays = [[1, 2, 3, 4, 5], ['John', 'Tim', 'Jacob', 'Chris', 'Keiron']]

Tham số "names" đặt tên cho mỗi cấp chỉ mục:from_arrays () được sử dụng để tạo Multiindex -

multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))

Nhận vị trí của từng nhãn trong Multiindex -

print("\nThe location of each label in Multi-index...\n",multiIndex.codes)

Ví dụ

Sau đây là mã -

import pandas as pd

# MultiIndex is a multi-level, or hierarchical, index object for pandas objects
# Create arrays
arrays = [[1, 2, 3, 4, 5], ['John', 'Tim', 'Jacob', 'Chris', 'Keiron']]

# The "names" parameter sets the names for each of the index levels
# The from_arrays() is used to create a Multiindex
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))

# display the Multiindex
print("The Multi-index...\n",multiIndex)

# get the levels in Multiindex
print("\nThe levels in Multi-index...\n",multiIndex.levels)

# get the location of each label in Multiindex
print("\nThe location of each label in Multi-index...\n",multiIndex.codes)

Đầu ra

Điều này sẽ tạo ra kết quả sau -

The Multi-index...
MultiIndex([(1,   'John'),
            (2,    'Tim'),
            (3,  'Jacob'),
            (4,  'Chris'),
            (5, 'Keiron')],
            names=['ranks', 'student'])

The levels in Multi-index...
   [[1, 2, 3, 4, 5], ['Chris', 'Jacob', 'John', 'Keiron', 'Tim']]

The location of each label in Multi-index...
   [[0, 1, 2, 3, 4], [2, 4, 1, 0, 3]]