Кодирование категориальных переменных — это проблема, с которой могут столкнуться специалисты по данным при применении алгоритмов машинного обучения, поскольку эти алгоритмы поддерживают числовые переменные, но не категориальные переменные.

Что такое категориальные переменные?

Категориальные данные: означает категории, в которых значения хранятся в виде текста.

Другое определение: Категориальные данные — это данные, которые можно разделить на группы, такие как страны, пол, предметы и т. д.

Давайте начнем:

предполагая, что у вас есть эти данные (тема, оценка) и необходимо закодировать столбец темы.

Использование библиотеки sklearn:

Кодировщик ярлыков:

Закодируйте целевые метки со значениями от 0 до n_classes-1.

определите столбец «Тема», затем создайте объект LabelEncoder и примените fit_transform.

LableEncoder присваивает номер каждому уникальному предмету, где «Математика» занимает 2, «Наука» — 3 и так далее.

OneHotEncoder:

Закодируйте категориальные признаки как однократный числовой массив.

после создания объекта OneHotEncoder примените подходящее преобразование и преобразуйте в массив. OneHotEncoder создает столбец для каждой темы и присваивает значение 1 там, где находится тема.

Результатом здесь является массив, поэтому в первой строке значение 1 соответствует «Математике», а остальные предметы равны 0.

OneHotEncoder и ColumnTransformer:

[0]: укажите первый столбец «Тема», который необходимо закодировать.

Использование библиотеки панд:

get_dummies:

Преобразование категориальных переменных в фиктивные/индикаторные переменные

примените get_dummies к столбцу «тема».

весь код: