Слово «нормализация» вы встретите в двух разных разговорах. В одном обсуждают, как разложить таблицу заказов на четыре таблицы поменьше. В другом делят рост человека на 200 и радуются, что модель наконец обучилась. И там, и там это называется нормализацией данных.
Путаница живучая: человек читает статью про базы данных, приходит на собеседование в аналитику, слышит вопрос про нормализацию признаков и теряется. Поэтому мы разобрали оба смысла отдельно и сразу показали, к какому из них относится ваша задача.
Внутри: сквозной пример, где одна кривая таблица «Заказы» превращается в четыре нормальные; формулы Min-Max и Z-score с пояснением каждой буквы; таблица, каким алгоритмам машинного обучения нормализация обязательна, а каким она безразлична; способы нормализовать данные в Excel, Python и SQL; пять ошибок, из-за которых нормализация делает только хуже.
Если базовые слова вроде «таблица», «признак» и «модель» пока звучат размыто, начните с обзорной статьи «Машинное обучение для неспециалистов»: там разобрано, откуда вообще берутся данные, на которых учится программа.
Статья пригодится не только программистам. С нормализацией сталкивается любой, кто выгружает отчёты и строит дашборды: маркетологи, продакты, финансисты и аналитики маркетплейсов. Разбираться в устройстве таблиц полезно даже без строчки кода, а если хочется системно, посмотрите нашу подборку курсов по анализу данных: там почти четыре сотни программ от коротких интенсивов до годовых.
Ну и совсем близкая тема: язык, на котором с базами разговаривают. Про него у нас отдельный материал «Язык SQL: что это такое и зачем его учить».
Что такое нормализация данных простыми словами

Нормализация данных это приведение данных к правильной форме, чтобы с ними было удобно и безопасно работать. Что считать «правильной формой», зависит от того, где вы находитесь.
В базах данных нормализация означает разбиение больших таблиц на несколько связанных так, чтобы каждый факт хранился ровно в одном месте. Имя клиента лежит в таблице клиентов, и больше нигде. Название товара лежит в таблице товаров, и больше нигде. Заказ ссылается на них по номеру.
В аналитике и машинном обучении нормализация означает приведение чисел к одной шкале. Площадь квартиры измеряется в десятках, цена в миллионах. Если оставить как есть, любая формула, которая считает расстояние между объектами, увидит только цену: разница в двадцать квадратных метров рядом с разницей в пять миллионов рублей просто исчезает.
Есть и третий, бытовой смысл, который в учебниках почти не разбирают, а на работе он встречается чаще двух первых. Это приведение текстовых значений к единому виду: «Москва», «москва», «г. Москва» и «МСК» должны стать одной строкой, иначе отчёт покажет четыре разных города. Про него будет отдельный раздел ниже.
Как понять, что имеют в виду. Если рядом звучат слова «таблица», «ключ», «SQL» или «нормальная форма», значит речь про базы данных. Если рядом «признак», «модель», «масштаб», «StandardScaler», значит речь про машинное обучение.
| Ваша ситуация | Какой смысл вам нужен | Куда смотреть в статье |
|---|---|---|
| Проектирую базу для сайта или сервиса | Нормальные формы | Разделы про 1НФ, 2НФ и 3НФ |
| Учу SQL, готовлюсь к собеседованию | Нормальные формы | Разделы про формы и денормализацию |
| Обучаю модель, данные в таблице признаков | Масштабирование | Min-Max, Z-score, таблица алгоритмов |
| Строю отчёт, а графики выглядят странно | Масштабирование | Разделы про Excel и практику |
| В выгрузке один город записан пятью способами | Нормализация справочников | Раздел про «Москву» и «г. Москву» |
Зачем нормализовать данные
Ответ у обоих смыслов разный, поэтому разберём по очереди.
В базе данных нормализация лечит три конкретные болезни. Их называют аномалиями, и звучат они страшнее, чем выглядят на примере.
Аномалия обновления. Клиент Иванов сменил телефон. В ненормализованной таблице его номер записан в каждой строке каждого заказа: было двести заказов, значит номер лежит в двухстах местах. Обновили сто девяносто восемь, про две забыли, и теперь база честно утверждает, что у одного человека два разных телефона. Дальше выясняется, что программа для рассылки берёт первый попавшийся.
Аномалия вставки. В компанию пришёл новый товар, но его ещё ни разу не заказали. Положить его некуда: таблица устроена так, что товар существует только внутри строки заказа. Приходится придумывать фиктивный заказ с нулевой суммой, а потом всю жизнь фильтровать эти пустышки в отчётах.
Аномалия удаления. Отменили единственный заказ на редкий товар и вместе с ним потеряли сам товар: его описание, цену, поставщика. Данные исчезли, потому что жили внутри чужой записи.
В машинном обучении нормализация решает другую задачу: убирает несправедливость между признаками. Модель не знает, что квадратные метры и рубли измеряются в разных единицах, для неё это просто числа. Признак с большими числами автоматически получает больше веса, хотя никаким более важным он не стал.
Проще всего это видно на рекомендациях. Сервис ищет похожие квартиры, считая расстояние между объявлениями по площади и цене. Одна квартира отличается от другой на 20 м² и на 100 тысяч ₽. В формуле сложатся 20 и 100 000, и разница в площади просто не заметна на фоне разницы в цене. После нормализации оба признака попадают в один диапазон, и площадь снова начинает влиять на результат.
Есть и вторая причина, техническая. Алгоритмы обучения, которые постепенно подбирают коэффициенты (тот самый градиентный спуск), на разномасштабных данных сходятся медленнее и хуже. Нормализация ускоряет обучение, иногда в разы.
Канал основателя Checkroi Вани Буявца3 700 человек читают мой Телеграм-канал про нейросетиСобрал промпты для Claude Code и ChatGPT, разборы ИИ-инструментов и лайфхаки по продвижению бизнеса в одном местеПрисоединитьсяНормализация базы данных: как из одной таблицы получается четыре

Концепцию придумал британский математик Эдгар Кодд в 1970 году, когда описал реляционную модель данных: базу, где всё хранится в таблицах, а таблицы связаны между собой. Нормальные формы это набор требований к таблице, пронумерованных по возрастанию строгости. Каждая следующая форма включает требования предыдущей.
Разберём на сквозном примере. Пусть интернет-магазин ведёт учёт в одной таблице.
| № заказа | Клиент | Телефон | Товары | Категория | Менеджер | Город менеджера |
|---|---|---|---|---|---|---|
| 1001 | Иванов И. | +7 900 111-11-11 | Мышь, коврик | Периферия | Петрова | Казань |
| 1002 | Иванов И. | +7 900 111-11-11 | Ноутбук | Техника | Петрова | Казань |
| 1003 | Сидорова А. | +7 900 222-22-22 | Мышь | Периферия | Смирнов | Пермь |
Выглядит удобно, пока строк тридцать. На тридцати тысячах здесь живут все три аномалии сразу.
Первая нормальная форма (1НФ)
Требование одно: в каждой ячейке лежит одно неделимое значение, а не список. Такое значение называют атомарным.
В нашей таблице сломан именно этот пункт: в столбце «Товары» у заказа 1001 записано «Мышь, коврик». Посчитать, сколько всего продали мышек, такой таблицей невозможно: придётся разбирать строку по запятым и надеяться, что никто не написал «мышь и коврик».
Лечится разбиением: заказ из двух товаров становится двумя строками, по одной на товар. Заодно в 1НФ принято выделить первичный ключ: столбец или комбинацию столбцов, которые однозначно определяют строку. Здесь ключом станет пара «№ заказа + товар».
Сюда же относится классическая ошибка, которую делают в Excel: фамилия, имя и отчество в одном поле. Пока вы просто смотрите глазами, всё нормально. Как только понадобится отсортировать по фамилии или подставить имя в письмо, начинается разбор строки по пробелам, и первый же двойной пробел ломает всю выгрузку.
Вторая нормальная форма (2НФ)
Требование: таблица уже в 1НФ, и каждый неключевой столбец зависит от всего первичного ключа целиком, а не от его части.
Звучит формально, поэтому переведём. Ключ у нас составной: «№ заказа + товар». Столбец «Категория» описывает товар и вообще не зависит от номера заказа: мышь лежит в периферии независимо от того, кто её купил. Значит, категория зависит от части ключа, и это нарушение.
Такая зависимость одного столбца от другого называется функциональной зависимостью. Проверить её просто: спросите себя, достаточно ли знать значение одного столбца, чтобы точно назвать значение второго. Знаем товар, значит знаем категорию. Знаем номер заказа, а категорию по нему не назовём.
Лечится выносом: заводим отдельную таблицу «Товары» со столбцами «Товар» и «Категория», а в таблице заказов оставляем только ссылку на товар. Такая ссылка называется внешним ключом: она хранит идентификатор строки из другой таблицы.
Третья нормальная форма (3НФ)
Требование: таблица в 2НФ, и неключевые столбцы не зависят друг от друга.
Смотрим на «Менеджера» и «Город менеджера». Город зависит не от заказа, а от менеджера: Петрова сидит в Казани во всех строках, где она встречается. Это и есть зависимость одного неключевого столбца от другого, её называют транзитивной.
Чем она опасна: Петрова переехала в Новосибирск, и город нужно менять в каждой строке всех её заказов. Ровно та же аномалия обновления, от которой мы бежали.
Лечится так же: таблица «Менеджеры» со столбцами «Менеджер» и «Город», в заказах остаётся ссылка. По той же логике из таблицы уезжает и телефон клиента: он зависит от клиента, а не от заказа.
В итоге одна кривая таблица превратилась в четыре аккуратные.
| Таблица | Что хранит | Ключи |
|---|---|---|
| Клиенты | id, ФИО, телефон | первичный: id |
| Товары | id, название, id категории | первичный: id, внешний: категория |
| Менеджеры | id, фамилия, город | первичный: id |
| Заказы | id, id клиента, id товара, id менеджера, дата | первичный: id, три внешних |
Телефон Иванова теперь лежит в одном месте. Новый товар добавляется без фиктивного заказа. Отмена заказа не уносит с собой описание товара. Все три аномалии закрыты.
Практический ориентир. Для большинства проектов достаточно довести базу до третьей нормальной формы и на этом остановиться. Всё, что дальше, решает редкие частные задачи и почти никогда не окупается усложнением.
Что идёт после 3НФ и нужно ли оно вам
Форм на самом деле больше. За третьей идёт форма Бойса-Кодда (её обозначают BCNF), затем четвёртая, пятая и шестая. Каждая закрывает всё более экзотические случаи: BCNF разбирается с составными ключами, которые накладываются друг на друга, четвёртая с многозначными зависимостями, шестая появляется в хранилищах, где нужно хранить историю изменения каждого поля отдельно.
Если вы проектируете базу для интернет-магазина, блога, CRM или мобильного приложения, знать эти формы полезно для собеседования и бесполезно для работы. Спокойно останавливайтесь на 3НФ.
Что стало с запросами после нормализации
У нормализации есть цена, и про неё обычно забывают. Пока таблица была одна, вопрос «покажи все заказы с именами клиентов» решался одной строкой:
SELECT * FROM orders;
После разбиения данные лежат в четырёх местах, и их приходится собирать обратно. Операция склейки таблиц по ключу называется JOIN:
SELECT o.id, c.name, p.title, m.surname
FROM orders o
JOIN clients c ON c.id = o.client_id
JOIN products p ON p.id = o.product_id
JOIN managers m ON m.id = o.manager_id;
Запрос стал длиннее, и работает он чуть медленнее: базе нужно сходить в четыре таблицы вместо одной. Взамен вы получаете данные, которым можно доверять, и структуру, которую не страшно менять. На типичных объёмах интернет-магазина эта разница в скорости незаметна: современные СУБД вроде PostgreSQL и MySQL склеивают таблицы по ключам быстро.
Проблема появляется на миллионах строк и тысячах запросов в секунду. Что с ней делать, разберём в разделе про денормализацию. Если хочется потренироваться писать такие запросы руками, удобнее всего начать с бесплатного клиента DBeaver: у нас есть пошаговая инструкция по подключению к базе.
Нормализация в аналитике и машинном обучении
Переключаемся на второй смысл. Здесь нормализация работает не с таблицами, а с числами внутри столбцов, и цель у неё одна: привести все признаки к сопоставимому масштабу.
Признак (по-английски feature) это один столбец в таблице, которую вы отдаёте модели: возраст, площадь, количество просмотров. Вся таблица целиком называется датасетом.
Возьмём таблицу с квартирами: площадь от 20 до 200 квадратных метров, цена от 3 до 30 миллионов рублей, этаж от 1 до 25. Три столбца живут в трёх разных вселенных. Задача нормализации: перевести их в общий диапазон, сохранив пропорции внутри каждого столбца.
Min-Max: сжимаем в отрезок от нуля до единицы
Самый прямолинейный метод. Берём минимум и максимум столбца и растягиваем всё между ними на отрезок от 0 до 1:
x' = (x − min) / (max − min)
Разберём буквы: x это исходное значение, min и max это наименьшее и наибольшее значение в столбце, x' результат.
Считаем на площади. Минимум 20, максимум 200. Квартира на 110 м² превращается в (110 − 20) / (200 − 20) = 0,5. Самая маленькая квартира станет нулём, самая большая единицей, остальные распределятся между ними.
Когда брать Min-Max: когда у величины есть понятные жёсткие границы. Яркость пикселя всегда от 0 до 255, оценка всегда от 1 до 5, процент всегда от 0 до 100. Нейросети тоже обычно любят вход в диапазоне от нуля до единицы.
Где ломается: на выбросах. Достаточно одной аномальной квартиры в 2000 м², и максимум прыгает туда. Все нормальные квартиры сжимаются в узкую полоску около нуля, и различить их становится нечем.
Z-score: считаем в стандартных отклонениях
Второй по популярности метод, его чаще называют стандартизацией. Здесь мы не растягиваем данные между границами, а измеряем, насколько каждое значение отличается от среднего:
x' = (x − среднее) / стандартное отклонение
В формулах среднее обычно обозначают как x̄, а стандартное отклонение греческой буквой σ (сигма). Стандартное отклонение это мера разброса: насколько сильно значения в столбце в среднем гуляют вокруг своего среднего. Маленькая сигма означает, что все значения кучкуются рядом, большая говорит, что разлетаются широко.
Результат читается приятно: ноль означает «ровно среднее значение», единица «на одно стандартное отклонение выше среднего», минус два «на два отклонения ниже». Жёстких границ у результата нет, значения обычно ложатся примерно в отрезок от −3 до 3.
Когда брать Z-score: когда в данных есть выбросы, когда распределение похоже на нормальное (та самая колоколообразная кривая), и когда вы работаете с линейной или логистической регрессией, методом опорных векторов (SVM) или методом главных компонент (PCA).
Именно Z-score чаще всего оказывается разумным выбором по умолчанию: он спокойнее переживает выбросы и не требует, чтобы вы заранее знали границы величины.
Ещё два метода, которые встретятся в учебниках
Десятичное масштабирование. Делим все значения на десять в нужной степени, чтобы результат уместился в отрезок от −1 до 1. Значения до 9000 делим на 10 000. Метод простой до наивности, зато результат легко читается глазами: порядок числа сохраняется.
Робастное масштабирование (RobustScaler). Логика как у Z-score, но вместо среднего берётся медиана, а вместо стандартного отклонения межквартильный размах. Обе эти величины почти не реагируют на выбросы, поэтому метод выручает на грязных данных: логи, чеки, поведенческие метрики.
Каким алгоритмам нормализация обязательна, а каким она безразлична
Нормализация нужна не всем моделям. Есть семейство алгоритмов, которым она вообще ничего не даёт, и время, потраченное на подбор скейлера, там уходит впустую.
Принцип простой: если алгоритм измеряет расстояния между объектами или подбирает коэффициенты постепенными шагами, масштаб для него критичен. Если алгоритм просто сравнивает значения между собой и режет их на группы, масштаб ему безразличен.
| Алгоритм | Нужна ли нормализация | Почему |
|---|---|---|
| KNN (метод ближайших соседей) | Обязательно | Считает расстояние между объектами напрямую |
| K-means (кластеризация) | Обязательно | Тоже считает расстояния до центров кластеров |
| SVM (метод опорных векторов) | Обязательно | Строит границу по расстояниям до точек |
| PCA (метод главных компонент) | Обязательно | Ищет направления наибольшего разброса |
| Нейросети | Обязательно | Иначе обучение идёт медленно и нестабильно |
| Линейная и логистическая регрессия | Желательно | Работает и без неё, но сходится дольше; с регуляризацией обязательно |
| Решающее дерево | Не нужна | Сравнивает значения внутри одного столбца |
| Случайный лес | Не нужна | Это набор деревьев, логика та же |
| Градиентный бустинг (CatBoost, XGBoost, LightGBM) | Не нужна | Внутри те же деревья |
Что делать, если непонятно. Не помните, к какому семейству относится ваша модель, просто нормализуйте. Деревьям от этого не станет хуже, они просто проигнорируют изменение масштаба. А вот пропущенная нормализация для KNN или нейросети испортит результат заметно.
Нормализация или стандартизация: чем они отличаются
Вопрос попадается на каждом втором собеседовании, и путаницу подогревает то, что термины употребляют небрежно. В строгом смысле нормализация это Min-Max (сжатие в заданный отрезок), а стандартизация это Z-score (пересчёт через среднее и стандартное отклонение). В разговоре же нормализацией часто называют вообще любое приведение к общей шкале, включая стандартизацию.
| Параметр | Min-Max (нормализация) | Z-score (стандартизация) |
|---|---|---|
| Что получается на выходе | Обычно от 0 до 1 | Среднее 0, разброс 1, границ нет |
| Что берётся из данных | Минимум и максимум | Среднее и стандартное отклонение |
| Чувствительность к выбросам | Высокая | Низкая |
| Сохраняет форму распределения | Да | Да, но центрирует его в нуле |
| Типичное применение | Картинки, оценки, проценты, нейросети | Регрессия, SVM, PCA, кластеризация |
| Класс в scikit-learn | MinMaxScaler |
StandardScaler |
Как нормализовать данные на практике
Три инструмента под три разные ситуации.
В Excel и Google Таблицах
Отдельной кнопки нет, но формула пишется за минуту. Пусть значения лежат в столбце A, начиная со строки 2.
Min-Max в ячейке B2:
=(A2-МИН($A$2:$A$100))/(МАКС($A$2:$A$100)-МИН($A$2:$A$100))
Z-score в ячейке C2:
=(A2-СРЗНАЧ($A$2:$A$100))/СТАНДОТКЛОН.В($A$2:$A$100)
Знаки доллара здесь нужны обязательно: они закрепляют диапазон, чтобы при протягивании формулы вниз он не уезжал. В англоязычной версии функции называются MIN, MAX, AVERAGE и STDEV.S.
Этого достаточно, чтобы построить график, где выручка и количество заказов лежат на одной оси и обе линии видно. Если сводные таблицы пока даются тяжело, посмотрите разбор «Как сделать сводную таблицу в Excel».
В Python: три строки кода
Стандартный инструмент это библиотека scikit-learn, там нормализация занимает три строки:
from sklearn.preprocessing import StandardScaler, MinMaxScaler
import pandas as pd
df = pd.read_csv('flats.csv')
scaler = StandardScaler() # или MinMaxScaler()
df[['area', 'price']] = scaler.fit_transform(df[['area', 'price']])
Метод fit_transform делает два дела сразу: fit считает нужную статистику по столбцу (минимум с максимумом или среднее с отклонением), transform применяет её к значениям. Разделять эти два шага придётся почти сразу, и почему именно, разберём в следующем разделе.
В SQL
Прямо в запросе тоже можно, оконными функциями:
SELECT
id,
(area - MIN(area) OVER ()) / (MAX(area) OVER () - MIN(area) OVER ()) AS area_norm
FROM flats;
На практике так делают редко: нормализацию чаще проводят на стороне Python или BI-инструмента. Но знать способ полезно, когда данных много и тащить их из базы не хочется.
Нормализация справочников: когда «Москва» и «МСК» ломают отчёт
Третий смысл слова, тот самый бытовой. Он не попадает в учебники, зато съедает больше рабочего времени, чем нормальные формы и Min-Max вместе взятые.
Выгружаете отчёт по городам и видите: Москва 4210 заказов, москва 380, г. Москва 145, МСК 62, Мсква 3. Пять строк, один город. Дашборд показывает пять разных значений, руководитель видит, что Москва даёт меньше Питера, и делает неверный вывод.
Откуда берётся: данные пришли из разных источников, часть заполняли руками в свободном поле, часть подтянулась из старой CRM со своим форматом, часть залил партнёр по своему шаблону.
Что с этим делают:
- Приводят регистр к единому: всё в нижний, потом первая буква заглавная.
- Срезают служебные префиксы: «г.», «гор.», «город».
- Убирают лишние пробелы, особенно в начале и конце строки.
- Заводят таблицу соответствий: «МСК» и «Москва (МО)» ведут на «Москву».
- Закрывают источник проблемы: в форме ввода делают выпадающий список вместо свободного текстового поля.
Последний пункт важнее остальных. Пока люди вбивают город руками, вы будете чистить справочник вечно.
Проверка на пять минут. Возьмите любой текстовый столбец в своей выгрузке, постройте по нему сводную таблицу с подсчётом уникальных значений и просто пролистайте список. Если городов в отчёте больше, чем городов у компании, вы нашли работу на ближайший час.
Пять ошибок, из-за которых нормализация вредит

Ошибка 1: считать статистику по всем данным сразу. Самая дорогая ошибка в машинном обучении, у неё есть название: утечка данных (data leakage). Если вы посчитали среднее и отклонение по всей таблице, а потом разделили её на обучающую и тестовую части, информация о тестовых данных просочилась в обучение. Модель на проверке покажет красивые цифры, а в реальной работе провалится. Правильно так: fit только на обучающей части, transform на обеих.
scaler.fit(X_train)
X_train = scaler.transform(X_train)
X_test = scaler.transform(X_test) # тот же scaler, без повторного fit
Ошибка 2: нормализовать целевую переменную заодно со всеми. Прогнали через скейлер весь датафрейм, включая столбец с ценой, которую нужно предсказать. Модель обучится, выдаст 0,73, а перевести это обратно в рубли вы забудете. Целевую переменную трогают отдельно и осознанно.
Ошибка 3: масштабировать категории, закодированные числами. Столбец «Тип жилья» превратили в 1, 2, 3, а потом нормализовали. Для модели это стало непрерывной величиной, где «3» больше «1» в три раза, хотя это просто разные категории. Такие столбцы кодируют иначе, обычно через one-hot: отдельный столбец с нулём или единицей на каждое значение.
Ошибка 4: нормализовать до разбора выбросов. Одна строка с ценой в миллиард (опечатка при вводе) утянет Min-Max так, что все нормальные значения сожмутся в точку. Сначала смотрят на распределение и чистят явный мусор, потом масштабируют.
Ошибка 5: перенормализовать базу. Уже в мире СУБД. Увлечённое дробление на десятки крошечных таблиц приводит к запросам с восемью JOIN, которые никто не может ни прочитать, ни отладить. Правило прежнее: 3НФ и остановка. Если сомневаетесь между «вынести в отдельную таблицу» и «оставить», спросите себя, будет ли это значение повторяться. Повторяется много раз, выносите. Встречается один раз на строку, оставляйте.
Денормализация: когда данные намеренно дублируют обратно
Денормализация это сознательное нарушение нормальных форм ради скорости чтения. Часть данных дублируют, чтобы не собирать их запросом каждый раз.
Простой пример: в таблице заказов рядом с ссылкой на клиента дополнительно хранят его имя. Формально это избыточность и нарушение 3НФ. Практически это спасает от JOIN на каждой странице списка заказов, которую открывают тысячу раз в минуту.
Когда денормализация оправдана:
- Читают данные во много раз чаще, чем меняют.
- Конкретный запрос уже стал узким местом, и это видно по замерам, а не по ощущениям.
- Речь о витрине или хранилище для отчётности, куда данные приезжают пачками через ETL (процесс выгрузки, преобразования и загрузки данных).
- Значение почти не меняется: название страны, категория товара.
Цена решения та же аномалия обновления, от которой мы уходили: клиент сменил фамилию, и её теперь нужно обновлять в двух местах. Поэтому порядок действий такой: сначала нормализуем и делаем правильно, потом замеряем, и только там, где болит, аккуратно дублируем. Обратный порядок («сразу сделаем быстро») приводит к базе, которую через год проще переписать заново.
Именно этот баланс между чистотой структуры и скоростью работы держат администраторы баз данных и дата-инженеры: их работа во многом состоит из решений «здесь нормализуем, а здесь оставим дубль осознанно».
Где научиться работать с данными
Нормализация это одна тема из большого набора, и в одиночку она мало что даёт. Чтобы она заработала на практике, рядом нужны SQL, статистика, инструменты визуализации и понимание, откуда в компании вообще берутся данные. Собирать это самостоятельно можно, но выходит долго и с пробелами.
Проще один раз пройти программу, где всё выстроено по порядку: сначала таблицы и запросы, потом обработка и очистка, потом модели и отчёты.
| Курс | Школа | Стоимость со скидкой | В рассрочку | Длительность | Обзор курса от Checkroi |
|---|---|---|---|---|---|
| Нейросети для рабочих задач Перейти на сайт курса | 31 290 ₽ | 2608 ₽/мес. | 1 месяц | Обзор курса | |
| Нейросети. Практический курс Перейти на сайт курса | 74 900 ₽ | 6242 ₽/мес. | 3 месяца | Обзор курса | |
| Профессия «Аналитик данных с нуля до middle» Перейти на сайт курса | 145 600 ₽ | 6066 ₽/мес. | 12 месяцев | Обзор курса | |
| Профессия «Аналитик данных» Перейти на сайт курса | 101 000 ₽ | 4156 ₽/мес. | 8 месяцев | Обзор курса | |
| Аналитик данных с нуля Перейти на сайт курса | 126 936 ₽ | 4994 ₽/мес. | 4 месяца | Обзор курса | |
| Анализ данных | 134 640 ₽ | 5500 ₽/мес. | 12 месяцев | Обзор курса | |
| Аналитик данных Перейти на сайт курса | 131 814 ₽ | 3662 ₽/мес. | 6 месяцев | Обзор курса | |
| Аналитик данных: тариф PRO Перейти на сайт курса | 136 395 ₽ | 5683 ₽/мес. | 8 месяцев | Обзор курса | |
| Аналитик данных: тариф Базовый Перейти на сайт курса | 109 900 ₽ | 4579 ₽/мес. | 6 месяцев | Обзор курса | |
| Аналитик данных: расширенный курс Перейти на сайт курса | 142 100 ₽ | 4786 ₽/мес. | 14 месяцев | Обзор курса |
Больше программ — в полном каталоге курсов по анализу данных
Если пока непонятно, в какую сторону расти, посмотрите обзор профессии «Аналитик данных» и пошаговый план «Как стать аналитиком данных с нуля». Тем, кому ближе отчёты и дашборды, подойдёт роль BI-аналитика, а тем, кто хочет работать с большими объёмами, будет полезен материал про большие данные.
Из соседних базовых тем пригодятся корреляция (как понять, связаны ли два признака) и датасет (из чего вообще собирают обучающую таблицу).




