Атрибут codes
Атрибут codes аксессора cat применяется к категориальной Series
и возвращает массив целочисленных кодов, соответствующих каждой категории.
Коды представляют собой индексы категорий из атрибута categories.
Этот атрибут полезен для получения числового представления категориальных данных.
Синтаксис
ser.cat.codes
Пример
Создадим категориальную серию и выведем её коды:
import pandas as pd
ser = pd.Series(['a', 'b', 'c', 'a', 'b'], dtype='category')
print(ser.cat.codes)
Результат выполнения кода:
0 0
1 1
2 2
3 0
4 1
dtype: int8
Пример
Покажем, что коды соответствуют порядку категорий в атрибуте categories:
import pandas as pd
ser = pd.Series(['x', 'y', 'z', 'x'], dtype='category')
print("Categories:", ser.cat.categories.tolist())
print("Codes: ", ser.cat.codes.tolist())
Результат выполнения кода:
Categories: ['x', 'y', 'z']
Codes: [0, 1, 2, 0]
Пример
Коды полезны для преобразования категориальных данных в числовой формат для машинного обучения:
import pandas as pd
ser = pd.Series(['low', 'medium', 'high', 'medium', 'low'], dtype='category')
numeric_codes = ser.cat.codes
print(numeric_codes)
Результат выполнения кода:
0 0
1 1
2 2
3 1
4 0
dtype: int8
Смотрите также
-
атрибут
categories,
который возвращает категории серии -
атрибут
ordered,
который проверяет, упорядочена ли категориальная серия -
метод
rename_categories,
который переименовывает категории -
метод
set_categories,
который устанавливает новые категории для серии