📌 Винзоризация
Все тут итак вкурсе, что для нормального анализа, данные требуют какой-то предобработки. Один из пунктов на этом этапе — работа с выбросами. Что с ними делать? Ну чаще всего это либо очистка по IQR/SD/Кастом, либо какое-то преобразование всего скопа (типа логарифмирования), либо сохранение выбросов, если они являются каким-то значимым бизнес-сигналом.
Но не многие вкурсе о таком хитром методе как винзорирование (или винзоризация, кому как нравится). Смысл данной процедуры одновременно в том, чтобы подчистить выбросы и не потерять наблюдения. Если на пальцах, то работает так — берём набор данных, выбираем границы-перцентили и преобразуем вылеты за них в значения по верхам-низам.
Т.е. вот есть у нас ряд значений какой-то метрики (как самый частый представитель числовых рядом): 1, 2, 3, 4, 5, 2000. Тут 2000 явный выброс. В 90-м перцентиле, например, граница у нас на 5, значит всё что выше этой отметки преобразуем в это значение, и 2000 через вжух становится 5. Теперь у нас ряд 1, 2, 3, 4, 5, 5.
И наблюдения остались, и выбросов нет.
Стоп, так мы же тогда горб на границе нарастим? Ага, функция может получиться некрасивой, плотность искусственной и нормальность, скорее всего, тоже потрачена. Но зато мы получим более устойчивый сет. Дисперсии и среднее будут менее дёргаными, а это зачастую намного важнее для тестов или моделей.
Более стабильная математика всегда лучше красивой картинки (даже если твой менеджер настаивает на обратном).
Post #215
2.61K

- 👍 19
- ❤ 8
- 🔥 3