Введение в Data Science: с чего начать анализ данных

Data Science — это область на стыке программирования, статистики и знания предметной сферы, задача которой — извлекать из данных решения: прогнозы, оценки, классификации, рекомендации. Это не отдельная технология и не одна профессия, а процесс: от вопроса бизнеса до работающей модели или отчета. Ниже разберу, как устроено это поле, чем отличаются роли внутри него, из каких этапов состоит анализ данных и какой минимальный набор инструментов нужен новичку, чтобы сделать первый шаг.

Статья — про поле и процесс, а не про учебник статистики. Формулы среднего и дисперсии здесь не выводятся: цель — показать карту, по которой новичок понимает, куда он движется и что осваивать в каком порядке.

Что такое Data Science и что не является им

Термин часто смешивают с соседними. Разведу их сразу, дальше они встречаются как отдельные этапы и роли.

  • Data Science — широкое поле по извлечению пользы из данных: анализ, моделирование, интерпретация.
  • Машинное обучение (ML) — подраздел, где модель учится закономерностям на примерах, а не программируется правилами вручную. Это инструмент внутри Data Science, а не синоним.
  • Аналитика данных — работа с уже собранными данными для ответа на вопрос «что произошло и почему»; часто без обучения моделей, через SQL, агрегаты и графики.
  • Искусственный интеллект — зонтичный термин шире ML; в работе с данными на практике почти всегда имеют в виду именно ML.

Упрощение: границы размыты, и один человек в маленькой команде может закрывать сразу несколько ролей. Разделение ниже описывает специализации в зрелой команде, а не жесткие непересекающиеся касты.

Роли: аналитик данных, data scientist, ML-инженер

Три роли отвечают на разные вопросы и отдают разный результат. Путаница между ними — типичная ошибка новичка при выборе первой цели.

Роль На какой вопрос отвечает Ключевые инструменты Что отдает на выходе
Аналитик данных (data analyst) Что произошло и почему; какие метрики растут или падают SQL, Excel/Google Sheets, BI (дашборды), Python + pandas Отчет, дашборд, вывод для решения
Data scientist Что произойдет; как предсказать или сегментировать Python, pandas, scikit-learn, статистика, ML Модель прогноза, эксперимент, гипотеза с проверкой
ML-инженер Как довести модель до стабильной работы в продукте Python, Docker, пайплайны, облако, мониторинг Развернутый сервис, воспроизводимый пайплайн

Отдельно стоит дата-инженер (data engineer): он строит хранилища и потоки данных (базы, ETL, витрины), чтобы у остальных вообще были чистые данные. В Data Science он не входит напрямую, но без него анализировать нечего.

Для большинства новичков вход мягче всего через роль аналитика данных: порог по математике ниже, результат виден быстро, а навыки (SQL, pandas, визуализация) — фундамент и для перехода в data scientist позже.

Пайплайн работы с данными: восемь этапов

Анализ данных удобно представлять как последовательность этапов. Важная оговорка: это не строгий конвейер в одну сторону. На практике постоянно возвращаются назад — плохая метрика на оценке отправляет обратно к признакам или даже к постановке задачи. Стрелки скорее циклические, чем прямые.

  1. Постановка задачи. Перевод вопроса бизнеса в измеримую задачу: «снизить отток» превращается в «предсказать вероятность ухода клиента в следующем месяце». Здесь же выбирают метрику успеха.
  2. Сбор данных. Выгрузки из баз (SQL), логи, внешние источники, API. Тут решают, каких данных не хватает.
  3. Очистка данных. Пропуски, дубликаты, опечатки, выбросы, несогласованные форматы. По опыту команд, этот этап занимает основную долю времени проекта, а не моделирование.
  4. Разведочный анализ (EDA). Первое знакомство с данными: распределения, связи между переменными, аномалии. Цель — понять данные, а не построить модель.
  5. Конструирование признаков (feature engineering). Превращение сырых полей в информативные признаки: из даты рождения — возраст, из даты покупки — день недели, агрегаты по клиенту.
  6. Обучение модели. Выбор алгоритма и обучение на подготовленных данных. На старте это часто простая модель как базовая точка отсчета.
  7. Оценка. Проверка на отложенных данных, которых модель не видела, по выбранной на шаге 1 метрике. Здесь ловят переобучение.
  8. Развертывание (деплой) и сопровождение. Модель встраивают в продукт и следят за ней: данные со временем меняются, качество может деградировать.

Мини-цепочка на одном примере: вопрос «кто уйдет» (постановка) -> выгрузка истории покупок (сбор) -> убрали дубли заказов (очистка) -> ушедшие реже заходили последний месяц (EDA) -> признак «дней с последнего входа» (признаки) -> обучили модель (модель) -> проверили на прошлом квартале (оценка) -> подключили к CRM (деплой).

Базовый инструментарий новичка

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

  • Python — основной язык поля из-за библиотек и низкого порога входа. Актуальная ветка на 2026 — Python 3.14. R остается в академической и биостат-среде, но для входа достаточно одного Python.
  • pandas — библиотека для табличных данных: чтение, фильтры, группировки, соединения. Ядро повседневной работы аналитика.
  • Jupyter Notebook — интерактивная среда, где код, графики и текст живут в одном документе; удобно для разведки и объяснения результата.
  • SQL — язык запросов к базам; данные почти всегда лежат в реляционной СУБД, и без SQL до них не добраться.
  • Визуализация — matplotlib и seaborn для графиков в Python, плюс BI-инструменты (дашборды) для отчетов бизнесу.
  • scikit-learn — библиотека классических ML-алгоритмов; нужна на этапе моделей, но не на первом шаге.

Минимальный полный пример на pandas — посчитать средние продажи по городам. Его можно скопировать и запустить целиком:

import pandas as pd

df = pd.DataFrame({
    "city": ["Moscow", "Piter", "Moscow", "Kazan"],
    "sales": [120, 80, 95, 60],
})

# среднее по каждой группе городов
print(df.groupby("city")["sales"].mean())

Ожидаемый вывод (pandas сортирует группы по имени):

city
Kazan      60.0
Moscow    107.5
Piter      80.0
Name: sales, dtype: float64

Разбор по шагам. pd.DataFrame({...}) создает таблицу из словаря, где ключи — имена столбцов. groupby("city") разбивает строки на группы по городу. ["sales"].mean() берет столбец продаж и считает среднее в каждой группе: у Moscow это (120 + 95) / 2 = 107.5.

Частая ошибка новичка — опечатка в имени столбца:

print(df.groupby("citi")["sales"].mean())

Результат — не пустой вывод, а исключение:

KeyError: 'citi'

pandas сообщает, что столбца citi нет. Исправление — вернуть точное имя city. Вывод: имена столбцов чувствительны к регистру и написанию, и читать текст ошибки полезнее, чем гадать.

Дорожная карта: первые шаги без «за N дней»

Ниже — маршрут до первого измеримого артефакта, а не до абстрактного «понял тему». Сроки зависят от базы и темпа, поэтому обещать конкретные дни я не буду.

  1. Python-основы: переменные, списки, словари, циклы, функции. Артефакт — маленький скрипт, который читает CSV и печатает пару чисел.
  2. pandas: чтение таблицы, фильтры, groupby, соединения (merge). Артефакт — блокнот с ответом на вопрос по реальному датасету.
  3. SQL: SELECT, WHERE, JOIN, агрегаты, GROUP BY. Артефакт — выгрузка нужного среза из учебной базы.
  4. Визуализация: 3-4 базовых графика в matplotlib/seaborn и один дашборд. Артефакт — график, который отвечает на вопрос из шага 2.
  5. Мини-проект целиком: взять открытый датасет, пройти пайплайн от вопроса до вывода, оформить в блокноте.

Если не получается, диагностика по симптому: код падает с KeyError/FileNotFoundError — проверьте имена столбцов и путь к файлу; график пустой — данные отфильтровались в ноль, посмотрите промежуточный df; выводы «ни о чем» — вопрос был сформулирован слишком широко, сузьте задачу до одной метрики.

Выводы

  • Data Science — это поле и процесс извлечения решений из данных, а не одна технология и не синоним машинного обучения.
  • Роли внутри поля отвечают на разные вопросы: аналитик — «что было», data scientist — «что будет», ML-инженер — «как довести до продукта».
  • Пайплайн (постановка -> сбор -> очистка -> EDA -> признаки -> модель -> оценка -> деплой) — это цикл с возвратами, а не конвейер в одну сторону.
  • Базовый набор новичка невелик: Python, pandas, Jupyter, SQL и визуализация; ML-библиотеки подключаются позже.
  • Практичный вход — через роль аналитика данных: ниже порог по математике и быстрее виден результат.

Где применяется / связь с практикой

Data Science работает там, где есть накопленные данные и вопрос к ним: банки оценивают риск по заявке, ритейл прогнозирует спрос, онлайн-сервисы строят рекомендации и предсказывают отток. Общий знаменатель — один и тот же пайплайн из восьми этапов, меняется только предметная область.

Освойте тему на практике

Начать удобнее с роли аналитика: этот набор навыков (SQL, pandas, визуализация) — и самостоятельная профессия, и фундамент для перехода в data scientist. Системно пройти его от основ до проекта помогает курс Data Analyst в Otus, а посмотреть на формат и уровень подачи можно на открытых уроках Otus — там разбирают отдельные темы вживую и без оплаты.

FAQ

Нужна ли сильная математика, чтобы начать?
Для роли аналитика на входе достаточно школьного уровня и базовой статистики. Глубже математика (линейная алгебра, теория вероятностей) нужна ближе к моделям и роли data scientist, и ее осваивают по мере продвижения, а не всю сразу перед стартом.

Python или R для первого языка?
Для входа достаточно одного Python: у него шире экосистема под анализ и деплой, ниже порог и больше вакансий. R остается сильным в академической и биостатистической среде, но новичку распыляться на два языка сразу не стоит.

Чем аналитик данных отличается от data scientist на практике?
Аналитик чаще отвечает на вопрос «что произошло» через SQL, агрегаты и дашборды, а data scientist строит прогнозные модели на «что произойдет». Границы размыты, и в небольшой команде один человек нередко закрывает обе задачи.

OTUS Журнал
Скидка 5% 14-20 сентября на курсы (popup)