EDA в Data Science - это исследовательский анализ данных. Его проводят перед глубоким анализом, построением модели или проверкой гипотез, чтобы понять, что находится в датасете.
Если объяснять простыми словами, EDA помогает Data Scientist сначала «осмотреть данные»: найти пропуски, ошибки, выбросы, распределения, связи между признаками и первые закономерности.
Без EDA легко построить модель на грязных данных и получить красивый, но бесполезный результат. Поэтому исследовательский анализ - один из базовых этапов работы с данными.
- Что такое EDA простыми словами
- Зачем нужен EDA в Data Science
- Чем EDA отличается от обычной аналитики данных
- Когда проводится EDA
- Какие вопросы задают на этапе EDA
- Основные этапы EDA
- Этап 1. Первичный осмотр данных
- Этап 2. Проверка типов данных
- Этап 3. Поиск пропусков
- Этап 4. Поиск дублей
- Этап 5. Поиск выбросов и аномалий
- Этап 6. Анализ распределений
- Этап 7. Анализ связей между признаками
- Этап 8. Анализ целевой переменной
- Этап 9. Формулирование первых гипотез
- Какие графики используют в EDA
- Инструменты для EDA
- Пример EDA на простой задаче
- EDA перед машинным обучением
- EDA и задачи Data Scientist
- Что должно получиться после EDA
- Частые ошибки новичков в EDA
- Как новичку научиться делать EDA
- Мини-чеклист EDA для новичка
- Краткий вывод
- Читайте также
- FAQ
Что такое EDA простыми словами
EDA расшифровывается как Exploratory Data Analysis. На русском чаще используют два варианта: исследовательский анализ данных или разведочный анализ данных.
Смысл один: специалист изучает данные до того, как делать окончательные выводы или строить модель.
На этапе EDA нужно понять:
- сколько строк и столбцов в данных;
- какие типы признаков есть;
- есть ли пропуски;
- есть ли дубли;
- есть ли выбросы и аномалии;
- как распределены значения;
- какие признаки связаны между собой;
- есть ли заметные группы или сегменты;
- какие данные могут быть полезны для модели или вывода.
Простыми словами: EDA - это первый внимательный осмотр данных перед серьёзной работой.
Зачем нужен EDA в Data Science
Data Science редко начинается с идеального датасета. Данные могут быть неполными, шумными, противоречивыми или просто непонятными.
EDA помогает не идти вслепую.
Исследовательский анализ нужен, чтобы:
- понять структуру данных;
- найти технические ошибки;
- увидеть пропуски и дубли;
- обнаружить выбросы;
- оценить распределения признаков;
- сравнить группы объектов;
- найти первые закономерности;
- понять, какие признаки могут быть важными;
- решить, нужна ли модель машинного обучения;
- подготовить данные к дальнейшей работе.
Например, если компания хочет построить модель оттока клиентов, EDA помогает сначала понять, чем ушедшие клиенты отличаются от оставшихся. Может оказаться, что они реже заходили в продукт, чаще обращались в поддержку или приходили из определённого рекламного канала.
После такого анализа модель строится уже не вслепую, а с пониманием данных.
Чем EDA отличается от обычной аналитики данных
EDA и аналитика данных похожи, но это не одно и то же.
Аналитика данных часто отвечает на конкретный бизнес-вопрос: почему упала конверсия, какой канал лучше, где просела выручка, какой сегмент покупает чаще.
EDA чаще проводится перед этим или параллельно. Его задача - изучить датасет и понять, что в нём есть.
| Подход | Главный вопрос | Пример |
|---|---|---|
| EDA | Что находится в данных? | Найти пропуски, выбросы, распределения и связи между признаками |
| Аналитика данных | Что произошло и почему? | Понять, почему снизились продажи или изменилась конверсия |
Разница не всегда жёсткая. В реальной работе EDA часто переходит в аналитику, а аналитика использует методы EDA.
Если хотите подробнее разобраться в различиях направлений, посмотрите статью Data Science и аналитика данных.
Когда проводится EDA
EDA обычно проводят в начале работы с датасетом. Но к нему можно возвращаться несколько раз.
Исследовательский анализ нужен:
- перед построением модели машинного обучения;
- перед проверкой гипотез;
- перед созданием отчёта;
- при получении нового датасета;
- после объединения данных из нескольких источников;
- после очистки данных;
- когда модель показывает странный результат;
- когда в данных появились новые признаки.
Например, если модель показывает хорошую точность на обучающих данных, но плохо работает на новых, EDA может помочь найти причину: смещение выборки, выбросы, перекос в классах или утечку данных.
Какие вопросы задают на этапе EDA
Хороший EDA начинается не с графиков, а с вопросов.
Data Scientist пытается понять:
- что означает каждая строка;
- что означает каждый столбец;
- какая задача решается;
- какие данные важны для результата;
- какие признаки могут быть ошибочными;
- есть ли пропуски и почему они появились;
- есть ли выбросы и что они означают;
- какие признаки связаны с целевой переменной;
- какие группы объектов отличаются друг от друга;
- можно ли доверять данным.
Например, в таблице заказов есть столбец с ценой. Если в нём встречаются отрицательные значения, нужно не просто удалить строки, а понять причину: это ошибка, возврат, скидка или особый тип операции.
Основные этапы EDA
Исследовательский анализ данных можно разложить на несколько этапов.
| Этап | Что проверяем | Зачем это нужно |
|---|---|---|
| Первичный осмотр | Размер таблицы, столбцы, первые строки | Понять структуру датасета |
| Типы данных | Числа, строки, даты, категории | Понять, корректно ли распознаны признаки |
| Пропуски | Пустые значения | Решить, что делать с неполными данными |
| Дубли | Повторяющиеся строки или объекты | Избежать искажения анализа |
| Выбросы | Слишком большие, маленькие или странные значения | Найти ошибки или важные аномалии |
| Распределения | Как часто встречаются значения | Понять форму данных и перекосы |
| Связи между признаками | Корреляции и зависимости | Найти возможные закономерности |
| Визуализация | Графики, диаграммы, тепловые карты | Увидеть то, что не видно в таблице |
Этап 1. Первичный осмотр данных
Сначала нужно понять, с чем вы работаете.
На этом этапе смотрят:
- сколько строк в таблице;
- сколько столбцов;
- как называются признаки;
- какие есть первые значения;
- есть ли очевидные проблемы;
- какая строка считается одним объектом.
Например, в датасете интернет-магазина одна строка может означать заказ, товар в заказе, пользователя или отдельное действие на сайте. Это принципиально разные уровни данных.
Если перепутать уровень строки, можно сделать неправильные выводы. Например, посчитать количество заказов как количество товаров в заказах.
Этап 2. Проверка типов данных
Типы данных показывают, как система воспринимает значения: как числа, строки, даты или категории.
Типичные проблемы:
- дата записана как обычный текст;
- число записано строкой;
- цена содержит пробелы или символы валюты;
- категории записаны по-разному;
- целевой признак имеет неправильный формат;
- числовой код ошибочно воспринимается как количество.
Например, если дата заказа хранится как текст, с ней будет сложно считать месяцы, недели, периоды и сезонность. Сначала её нужно привести к корректному формату.
Проверка типов кажется простой, но она часто экономит много времени на следующих этапах.
Этап 3. Поиск пропусков
Пропуски - одна из самых частых проблем в данных.
Они могут появиться из-за:
- ошибок при сборе данных;
- необязательных полей в форме;
- технических сбоев;
- объединения таблиц;
- разных источников данных;
- особенностей бизнес-процесса.
Пропуск не всегда означает ошибку. Иногда отсутствие значения само по себе несёт смысл.
Например, если в поле «дата последней покупки» пусто, это может означать, что пользователь ещё ни разу ничего не купил. Удалять такую строку автоматически нельзя.
На этапе EDA важно понять:
- в каких столбцах есть пропуски;
- сколько их;
- случайны ли они;
- связаны ли они с определённой группой объектов;
- как они могут повлиять на анализ или модель.
Этап 4. Поиск дублей
Дубли - это повторяющиеся строки или объекты. Они могут искажать метрики и модели.
Например, если один заказ попал в таблицу дважды, выручка будет завышена. Если один клиент продублирован под разными ID, анализ поведения станет неточным.
Дубли могут появиться из-за:
- повторной выгрузки данных;
- ошибок при объединении таблиц;
- технических сбоев;
- неправильной логики идентификаторов;
- ручного копирования строк.
Но не все похожие строки являются дублями. Например, два одинаковых заказа могут быть реальными повторными покупками. Поэтому перед удалением нужно понимать бизнес-логику.
Этап 5. Поиск выбросов и аномалий
Выброс - это значение, которое сильно отличается от остальных.
Примеры выбросов:
- возраст клиента 250 лет;
- заказ на 5 000 000 ₽ среди обычных заказов по 2 000 ₽;
- отрицательная цена товара;
- 10 000 кликов от одного пользователя за минуту;
- резкий скачок заявок в один день;
- нулевая длительность сессии при большом количестве действий.
Выброс может быть ошибкой, а может быть важным сигналом.
| Тип выброса | Пример | Что делать |
|---|---|---|
| Ошибка в данных | Возраст 250 лет | Исправить или исключить |
| Редкое, но реальное событие | Очень крупный заказ | Изучить отдельно |
| Технический сбой | Резкий всплеск дублей | Проверить источник |
| Важная аномалия | Подозрительная транзакция | Сохранить как сигнал |
Главное правило: не удалять выбросы автоматически. Сначала нужно понять, почему они появились и важны ли они для задачи.
Этап 6. Анализ распределений
Распределение показывает, как значения расположены в данных.
Например, можно посмотреть:
- как распределён возраст клиентов;
- какие суммы заказов встречаются чаще;
- сколько пользователей делает 1, 2, 3 и больше покупок;
- как распределена длительность сессий;
- какие значения целевой переменной встречаются чаще.
Распределения помогают увидеть:
- перекосы;
- длинные хвосты;
- необычные пики;
- редкие группы;
- сильный дисбаланс классов;
- признаки, которые нужно преобразовать перед моделью.
Например, если большинство клиентов сделали один заказ, а небольшая группа делает десятки покупок, среднее количество заказов может плохо описывать поведение аудитории. В таком случае полезнее смотреть медиану, сегменты и распределение.
Этап 7. Анализ связей между признаками
После первичного осмотра важно понять, как признаки связаны между собой.
Можно изучать связи между:
- ценой и количеством покупок;
- скидкой и конверсией;
- возрастом клиента и средним чеком;
- количеством визитов и вероятностью покупки;
- каналом привлечения и удержанием;
- активностью пользователя и риском оттока.
Для этого используют корреляции, группировки, диаграммы рассеяния, сводные таблицы и сравнение сегментов.
Но здесь важно помнить: связь между признаками не всегда означает причинно-следственную зависимость. Если два показателя растут вместе, это ещё не доказывает, что один влияет на другой.
Подробнее такие темы разбираются в материале статистика для Data Science.
Этап 8. Анализ целевой переменной
Если задача связана с машинным обучением, особенно важно изучить целевую переменную.
Целевая переменная - это то, что модель должна предсказывать.
Примеры:
- клиент уйдёт или останется;
- пользователь купит или не купит;
- цена квартиры;
- спрос на товар;
- сумма заказа;
- наличие дефекта;
- категория обращения.
На этапе EDA нужно понять:
- как распределена целевая переменная;
- есть ли дисбаланс классов;
- есть ли странные значения;
- с какими признаками она связана;
- можно ли вообще строить модель на этих данных.
Например, если модель должна находить мошеннические операции, а таких операций в данных меньше 1%, обычная accuracy может быть обманчивой. Модель может почти всегда говорить «не мошенничество» и выглядеть точной, но не решать задачу.
Этап 9. Формулирование первых гипотез
EDA часто приводит к первым гипотезам.
Например:
- клиенты из одного канала чаще покупают повторно;
- пользователи с долгой паузой между визитами чаще уходят;
- скидка работает только на новых клиентов;
- заявки вечером чаще конвертируются в оплату;
- товары с большим количеством отзывов покупают чаще;
- чем дольше доставка, тем ниже повторная покупка.
Эти гипотезы ещё не являются доказанными выводами. Их нужно проверять: статистически, на дополнительных данных или через эксперимент.
Но именно EDA помогает увидеть, какие направления стоит исследовать дальше.
Какие графики используют в EDA
Визуализация - важная часть исследовательского анализа. Графики помогают быстрее заметить закономерности и проблемы.
| График | Зачем нужен |
|---|---|
| Гистограмма | Показать распределение числового признака |
| Boxplot | Найти выбросы и сравнить распределения |
| Диаграмма рассеяния | Увидеть связь между двумя числовыми признаками |
| Столбчатая диаграмма | Сравнить категории |
| Линейный график | Показать динамику во времени |
| Тепловая карта | Показать корреляции или матричные данные |
| Pairplot | Быстро посмотреть связи между несколькими признаками |
Плохая визуализация может запутать. Поэтому график нужно выбирать под вопрос. Если нужно показать динамику - подойдёт линия. Если распределение - гистограмма. Если выбросы - boxplot.
Инструменты для EDA
Для EDA используют базовые инструменты Data Science. Новичку не нужно начинать со сложных систем.
| Инструмент | Зачем нужен в EDA |
|---|---|
| Python | Обработка данных и автоматизация анализа |
| Pandas | Работа с таблицами, пропусками, группировками и статистиками |
| NumPy | Расчёты и работа с массивами |
| Matplotlib | Базовые графики |
| Seaborn | Удобные статистические визуализации |
| Jupyter Notebook | Пошаговый анализ с кодом, графиками и пояснениями |
| SQL | Получение и первичная агрегация данных из баз |
Подробный обзор программ и библиотек есть в статье инструменты Data Science.
Пример EDA на простой задаче
Представим, что у нас есть данные онлайн-школы. В таблице есть ученики, курс, источник трафика, дата регистрации, дата оплаты, количество пройденных уроков, домашние задания и статус обучения.
Бизнес хочет понять, почему часть учеников бросает курс.
На этапе EDA можно проверить:
- сколько всего учеников в данных;
- какие курсы представлены;
- есть ли пропуски в датах оплаты;
- сколько учеников дошли до конца;
- после каких уроков чаще уходят;
- отличаются ли каналы трафика по доходимости;
- влияет ли сдача первого домашнего задания на завершение курса;
- есть ли ученики со странной активностью;
- какие признаки могут быть связаны с оттоком.
После EDA могут появиться первые выводы. Например, ученики, которые не сдали первое задание за 7 дней, чаще бросают курс. Или ученики из определённого канала регистрации хуже доходят до середины программы.
Это уже не просто таблица. Это основа для решений: улучшить онбординг, изменить коммуникации, добавить напоминания или построить модель риска оттока.
EDA перед машинным обучением
Перед построением модели EDA особенно важен.
Он помогает понять:
- достаточно ли данных;
- есть ли целевая переменная;
- нет ли утечки данных;
- сбалансированы ли классы;
- какие признаки можно использовать;
- какие признаки нужно преобразовать;
- есть ли выбросы, которые испортят модель;
- какие метрики качества выбрать.
Например, если в данных есть столбец «дата закрытия аккаунта», а модель должна заранее предсказывать отток, этот признак может быть утечкой. Он содержит информацию из будущего и сделает модель искусственно хорошей на обучении, но бесполезной в реальности.
EDA помогает заметить такие проблемы до того, как модель попадёт в работу.
EDA и задачи Data Scientist
Исследовательский анализ данных встречается почти во всех задачах Data Scientist.
Он нужен при:
- прогнозировании спроса;
- анализе оттока клиентов;
- сегментации аудитории;
- построении рекомендательных систем;
- поиске аномалий;
- анализе отзывов;
- проверке бизнес-гипотез;
- подготовке данных к модели.
Без EDA специалист рискует работать с данными механически: загрузил таблицу, запустил модель, получил метрику. Но Data Science требует понимания, что происходит внутри данных.
Больше практических примеров можно посмотреть в статье задачи Data Scientist.
Что должно получиться после EDA
После хорошего EDA у специалиста должно быть понимание данных и план дальнейших действий.
Результатом EDA может быть:
- описание структуры датасета;
- список найденных проблем;
- понимание пропусков и дублей;
- решение по обработке выбросов;
- графики распределений;
- первые гипотезы;
- список потенциально важных признаков;
- понимание ограничений данных;
- рекомендации по дальнейшему анализу;
- понимание, нужна ли модель машинного обучения.
EDA не обязан давать окончательный ответ на все вопросы. Его задача - снизить неопределённость и показать, куда двигаться дальше.
Частые ошибки новичков в EDA
Сразу строить модель
Новички часто хотят быстрее перейти к машинному обучению. Но если не изучить данные, модель может обучиться на ошибках, выбросах или утечках.
Удалять пропуски автоматически
Пропуск может быть важным сигналом. Например, отсутствие покупки тоже говорит о поведении пользователя. Перед удалением нужно понять смысл.
Удалять все выбросы
Выбросы могут быть ошибками, но могут быть важными событиями. Например, крупный заказ или подозрительная транзакция могут быть именно тем, что нужно изучить.
Смотреть только среднее значение
Среднее может обманывать. Нужно смотреть медиану, распределение, разброс, выбросы и сегменты.
Строить графики без вопроса
Графики нужны не для украшения. Каждый график должен помогать ответить на вопрос: что происходит с данными?
Путать корреляцию и причинность
Если два показателя связаны, это не значит, что один вызывает другой. Связь нужно проверять осторожно.
Не фиксировать выводы
EDA без выводов превращается в набор графиков. Важно записывать, что найдено, какие есть проблемы и что делать дальше.
Как новичку научиться делать EDA
Лучший способ - брать простые датасеты и разбирать их по одному шаблону.
Начните с такого плана:
- Опишите задачу.
- Посмотрите размер таблицы.
- Изучите столбцы и типы данных.
- Проверьте пропуски.
- Проверьте дубли.
- Посмотрите основные статистики.
- Постройте распределения.
- Найдите выбросы.
- Посмотрите связи между признаками.
- Сравните группы.
- Сформулируйте 5-7 выводов.
- Опишите, что делать дальше.
Для практики подойдут датасеты по продажам, оттоку клиентов, недвижимости, фильмам, отзывам, заказам или рекламе.
Хотите научиться делать EDA и строить проекты по Data Science?
Сравните программы, где есть Python, SQL, статистика, исследовательский анализ данных, визуализация, машинное обучение и проекты для портфолио.
Смотреть лучшие курсы по Data Science
Мини-чеклист EDA для новичка
Используйте этот чеклист перед анализом или моделью.
- Понятно, что означает одна строка в таблице.
- Понятно, что означает каждый столбец.
- Проверены типы данных.
- Найдены пропуски.
- Проверены дубли.
- Проверены выбросы.
- Построены распределения основных признаков.
- Проверены связи между признаками.
- Изучена целевая переменная, если она есть.
- Сформулированы первые гипотезы.
- Записаны ограничения данных.
- Понятно, что делать дальше.
Краткий вывод
EDA в Data Science - это исследовательский анализ данных, который помогает понять датасет до построения моделей, отчётов и окончательных выводов.
На этапе EDA специалист изучает структуру данных, типы признаков, пропуски, дубли, выбросы, распределения, связи между признаками и первые закономерности.
Хороший EDA помогает не строить модель вслепую, а сначала разобраться, что находится в данных и какие проблемы могут повлиять на результат.
Новичку стоит начинать с простого шаблона: осмотр таблицы, проверка качества данных, визуализация, сравнение групп, первые гипотезы и понятные выводы.
Читайте также
- Инструменты Data Science: Python, SQL, Pandas, Jupyter и Kaggle
- Статистика для Data Science: зачем нужна и что учить
- Data Science и аналитика данных: в чем разница
- Какие задачи решает Data Scientist
- Лучшие курсы по Data Science
FAQ
Что такое EDA в Data Science?
EDA - это исследовательский анализ данных. Он помогает изучить датасет до построения модели: понять структуру данных, найти пропуски, дубли, выбросы, распределения и связи между признаками.
Как расшифровывается EDA?
EDA расшифровывается как Exploratory Data Analysis. На русском используют варианты «исследовательский анализ данных» или «разведочный анализ данных».
Зачем нужен EDA?
EDA нужен, чтобы понять данные перед дальнейшей работой. Он помогает найти ошибки, оценить качество данных, увидеть закономерности и решить, как двигаться дальше.
Когда делают EDA?
EDA обычно делают в начале работы с датасетом: перед анализом, проверкой гипотез, построением модели машинного обучения или созданием отчёта.
Какие инструменты нужны для EDA?
Чаще всего используют Python, Pandas, NumPy, Matplotlib, Seaborn, Jupyter Notebook и SQL. Новичку этого набора достаточно для первых проектов.
Чем EDA отличается от аналитики данных?
EDA изучает сам датасет: структуру, пропуски, выбросы, распределения и связи. Аналитика данных чаще отвечает на конкретный бизнес-вопрос: что произошло, почему и что делать.
Нужно ли делать EDA перед машинным обучением?
Да. EDA помогает понять качество данных, найти утечки, дисбаланс классов, выбросы и важные признаки. Без него модель может дать ошибочный результат.
Что должно быть результатом EDA?
После EDA должны быть понятны структура данных, проблемы датасета, распределения, важные признаки, первые гипотезы, ограничения и дальнейший план анализа или моделирования.








