Встречается на собеседованиях • сегодня

Какие знаешь способы кодирования категориальных переменных

Одним из самых распространенных методов является One-Hot Encoding, где каждая категория преобразуется в бинарный столбец. Пример с pandas:

python
import pandas as pd
df = pd.DataFrame({'color': ['red', 'blue', 'green']})
df_encoded = pd.get_dummies(df, columns=['color'])

Label Encoding присваивает каждой категории числовое значение (0, 1, 2...). Подходит для порядковых данных:

python
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
df['color_encoded'] = le.fit_transform(df['color'])

Ordinal Encoding похож на Label Encoding, но позволяет явно задать порядок категорий.

Target Encoding (Mean Encoding) заменяет категорию средним значением целевой переменной. Полезно для деревьев, но требует осторожности из-за переобучения.

Frequency Encoding заменяет категории на их частоту в данных.

Embedding (для нейросетей) — преобразует категории в плотные векторы.

Выбор метода зависит от данных, модели и задачи. One-Hot подходит для линейных моделей, Label/Ordinal — для деревьев, Target/Frequency — для задач с высокой кардинальностью.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы