
Подготовка эксперимента
Перед обучением модели обнаруживается, что 20% значений отсутствуют. Удалить эти строки? Заполнить средними? Или применить что-то сложное? Выбор сильно влияет на результат.
Поиск в интернете выдает множество подходов к заполнению пропусков: от элементарного использования среднего значения до продвинутых моделей машинного обучения. Кажется, что сложные варианты надежнее. KNN учитывает похожие строки. MICE строит предиктивные модели. Они наверняка лучше простого среднего, верно?
Так думали многие. Ошибочно.
Как проходил эксперимент
Взят датасет рекомендаций по культурам с платформы StrataScratch — 2200 образцов почвы для 22 видов растений, признаки включают уровень азота, температуру, влажность и осадки. Random Forest достигает на нем точности 99,6%. Данные выглядят идеально чистыми.
Этот анализ дополняет исследование сельскохозяйственных данных через разведочный анализ и статистику. Теперь проверяем, что происходит при добавлении пропусков.
Идеальный набор для теста.
Внесли 20% пропусков случайно (имитация сбоев датчиков), протестировали пять методов заполнения:

Тестирование было детальным: 10-кратная кросс-валидация по пяти случайным затветам (всего 50 запусков на метод). Импьютация проводилась только на обучающих наборах, чтобы избежать утечки из тестового. Для статистики применили коррекцию Бонферрони. Признаки нормализовали для KNN и MICE, иначе осадки (0–300) доминировали бы над pH (3–10) в расчетах расстояний.
Запустили и изучили итоги.
Неожиданный результат
Ожидали триумфа KNN или MICE — они учитывают связи признаков и применяют машинное обучение.
Получили другое:

Среднее и медиана разделили первое место. Сложные методы на третьем и четвертом.
Статистический тест: среднее против медианы — p = 0,7. Разницы нет. Они равны.
Но главное: оба просто обошли KNN и MICE (p < 0,001 после коррекции Бонферрони). Простота победила сложность.
Почему так вышло
Не спешите удалять MICE. Разберем причины.
Задача — предсказание урожая. Метрика — точность. Модель все еще правильно классифицирует культуры после заполнения? Важно сохранить предсказательный сигнал, а не точные значения.
Заполнение средним вставляет нейтральное значение, не искажающее классы. Оно скучное, но надежное. Random Forest находит границы решений.
KNN и MICE стараются угадать реальное значение. Но это добавляет шум: соседи не всегда похожи, итерации MICE ловят ложные паттерны — ошибка растет.
Базовая точность высока — 99,6%. Задача легкая, сигнал сильный, шум терпим.
Random Forest устойчив к неидеальным данным. Линейные модели хуже справляются с искажениями от среднего.

Не все так просто.
Неожиданный поворот
Проверили сохранение корреляций.
В реальных данных признаки связаны. В наборе при высоком фосфоре обычно высокий калий (корреляция 0,74). Это не случайность — удобрения добавляют вместе, почвы удерживают похоже.
Заполнение может сломать связи. Среднее вставляет типичный калий независимо от фосфора в строке. Корреляция между P и K слабеет.
Данные по столбцам выглядят нормально, но связи рушатся. Это проблема для кластеризации, PCA или визуализации.
Сколько корреляции P↔K сохранилось после заполнения?

Рейтинг перевернулся.
KNN сохранил почти все. Среднее и медиана уничтожили четверть. Случайная выборка стерла связь.
Логично: среднее игнорирует другие признаки. KNN смотрит на похожие строки — при высоком азоте подберет высокий калий.
Компромисс
Нет универсального лучшего метода. Выбирайте под цель.
Рейтинги по точности и корреляциям противоположны:

(Случайная выборка стабильно плохая.)
Это особенность методов. Среднее/медиана — одновыборочные, смотрят по столбцам. KNN/MICE — многомерные, учитывают связи. Первые держат распределения, но ломают корреляции. Вторые сохраняют структуру, но добавляют шум в предсказаниях.
Что применять на практике
Практические рекомендации после эксперимента и обзора литературы:
Среднее или медиана подходят, если:
- цель — предсказание (классификация, регрессия)
- модель устойчивая (Random Forest, XGBoost, нейросети)
- пропусков меньше 30%
- нужна скорость
KNN — когда:
- важно сохранить связи признаков
- дальше кластеризация, PCA или визуализация
- корреляции нужны для анализа
MICE — если:
- требуются корректные стандартные ошибки (для выводов)
- нужны доверительные интервалы или p-значения
- пропуски MAR (Missing at Random)
Избегайте случайной выборки:
- она держит распределение
- но уничтожает многомерную структуру
- хороших случаев применения не нашли
Важные оговорки
Тестировали один датасет, 20% пропусков, MCAR и Random Forest. Ваши условия могут отличаться. В литературе MissForest и MICE часто лучше на других наборах. Простые методы конкурентны, но не всегда.
Главный вывод
Эксперимент должен был подтвердить превосходство сложных методов. Вместо этого среднее показало себя в предсказаниях, но провалилось с корреляциями.
Урок не в том, чтобы всегда брать среднее. Важно понимать, за что оптимизировать.

Для предсказаний начинайте с простого. Проверяйте KNN или MICE на своих данных — не предполагайте их преимущество.
Для анализа связей среднее незаметно их разрушит, несмотря на хорошую точность. Это ловушка.
И всегда нормализуйте признаки перед KNN.