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

Python Pandas CategoricalIndex - Lấy mã danh mục của categorical

Để lấy mã danh mục (category codes) của một categorical trong Pandas, ta sử dụng thuộc tính codes của đối tượng CategoricalIndex. Trước tiên, import thư viện cần thiết:

import pandas as pd

CategoricalIndex chỉ có thể nhận một số lượng hữu hạn, thường là cố định, các giá trị có thể (danh mục). Thiết lập danh mục bằng tham số categories. Xử lý categorical theo thứ tự bằng tham số ordered. Các mã (codes) là mảng số nguyên biểu thị vị trí của các giá trị thực tế trong mảng danh mục:

catIndex = pd.CategoricalIndex(
    ["p", "q", "r", "s", "p", "q", "r", "s"],
    ordered=True,
    categories=["p", "q", "r", "s"]
)

Hiển thị Categorical Index:

print("Categorical Index...\n", catIndex)

Lấy mã danh mục:

print("\nMã danh mục từ CategoricalIndex...\n", catIndex.codes)

Ví dụ hoàn chỉnh

import pandas as pd

# CategoricalIndex chỉ nhận số lượng hữu hạn các giá trị có thể
# Thiết lập danh mục bằng tham số "categories"
# Xử lý theo thứ tự bằng tham số "ordered"
# Codes là mảng số nguyên biểu thị vị trí của giá trị thực tế trong mảng categories
catIndex = pd.CategoricalIndex(
    ["p", "q", "r", "s", "p", "q", "r", "s"],
    ordered=True,
    categories=["p", "q", "r", "s"]
)

# Hiển thị Categorical Index
print("Categorical Index...\n", catIndex)

# Lấy các danh mục
print("\nHiển thị danh mục từ CategoricalIndex...\n", catIndex.categories)

# Lấy mã danh mục
print("\nMã danh mục từ CategoricalIndex...\n", catIndex.codes)

Kết quả đầu ra

Categorical Index... CategoricalIndex(['p', 'q', 'r', 's', 'p', 'q', 'r', 's'], categories=['p', 'q', 'r', 's'], ordered=True, dtype='category')
Hiển thị danh mục từ CategoricalIndex... Index(['p', 'q', 'r', 's'], dtype='object')
Mã danh mục từ CategoricalIndex... [0 1 2 3 0 1 2 3]