Данные

Missing values

Пропущенные значения

актуальноТекущий рабочий стандарт

Пропуски бывают случайными и неслучайными — от механизма зависит, можно ли их просто заполнить.

Ключевые тезисы

  • MCAR / MAR / MNAR — три механизма пропусков с разными последствиями для смещения оценок.
  • Простые стратегии: медиана, мода, отдельная категория; сложные: KNN-imputer, модельное восстановление.
  • Флаг «значение было пропущено» часто сам по себе является сильным признаком.

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Три механизма пропусков

MCAR, MAR и MNAR: от механизма зависит, можно ли просто заполнить пропуск.

МеханизмЧто это значитПримерМожно ли заполнять
MCARпропуск не зависит ни от чегосбой датчикада, смещения не будет
MARзависит от других признаковмолодые реже указывают доходда, но по группам
MNARзависит от самого значениявысокие зарплаты скрываютнет — нужен флаг и осторожность

Проверить механизм полностью нельзя, но многое видно: сравните распределения признаков в строках с пропуском и без. Если они различаются — это не MCAR.

2

Стратегии заполнения

От медианы до модельного восстановления — и когда что оправдано.

  1. Удалить строки — только если пропусков мало (< 5%) и они MCAR.
  2. Константа / медиана / мода — быстро и безопасно; медиана устойчивее среднего к выбросам.
  3. Отдельная категория «неизвестно» — для категориальных признаков часто лучший вариант.
  4. По группам: медиана дохода внутри возрастной группы — простой способ учесть MAR.
  5. Модель: обучить регрессию/KNN, предсказывающую пропущенный признак по остальным.
Статистика считается только по обучающей части — иначе тест протекает в обучение
На практике

Почти всегда стоит добавить бинарный признак was_missing. Часто сам факт пропуска информативнее подставленного значения: «не указал доход» — сильный сигнал в скоринге.

возрастдоход
возраст23.00 … 61.00
доход45000.00 … 210000.00
Преобразование
Робастные статистики (медиана, IQR) устойчивее к выбросам — переключите режим и добавьте выброс

Связанные темы

Подготовка данных

Data preprocessing75%

Предобработка данных · Данные

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

Outliers75%

Выбросы · Данные

Наблюдения, резко отличающиеся от остальных. Они бывают ошибками измерения, а бывают самым ценным сигналом.

Encoding75%

Кодирование категорий · Данные

Перевод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.

Normalization & Standardization75%

Нормализация и стандартизация · Данные

Приведение признаков к сопоставимым масштабам, без которого расстояния, градиенты и регуляризация работают некорректно.

Feature engineering75%

Конструирование признаков · Данные

Создание признаков, в которых закономерность становится линейно отделимой или просто более заметной для модели.

ML Pipelines75%

ML-пайплайны · MLOps

Оформление обучения как воспроизводимой последовательности шагов вместо разрозненных ноутбуков.