Как быстро познакомиться с датасетом, прежде чем писать код
Привет! На связи Мария Жарова, ментор курса «ML-инженер» 👋🏻
Представьте ситуацию: вам дают новый датасет и просят «быстро глянуть на данные».
Что обычно вы делаете? Начать можно с
А что если я скажу, что можно получить полный отчёт по датасету за пару строк кода? В этом поможет
Что именно она показывает:
➖ Общий обзор датасета с автоматическими предупреждениями — дубликаты, сильная корреляция, константные признаки;
➖ Подробную аналитику по каждому столбцу — распределения, выбросы, статистики;
➖ Визуализации для числовых признаков и word cloud для категориальных;
➖ Пропуски и их структуру;
➖ Взаимосвязи между числовыми фичами.
По сути, это быстрый чек-лист качества данных в одном HTML.
❓ Как сгенерировать отчёт на Python
Установите библиотеку, если ранее ей не пользовались:
Минимальный код:
Отчёт можно посмотреть прямо в ноутбуке:
Или сохранить в HTML, чтобы поделиться с коллегами:
Это не просто красивая визуализация — на практике такой отчёт экономит часы: сразу видно, где данные «грязные», какие признаки бесполезны, а какие могут создать проблемы для модели.
Если раньше вы начинали анализ с
Ставьте❤️ , если было полезно — и сохраняйте, чтобы не потерять!
📊 Simulative
Привет! На связи Мария Жарова, ментор курса «ML-инженер» 👋🏻
Представьте ситуацию: вам дают новый датасет и просят «быстро глянуть на данные».
Что обычно вы делаете? Начать можно с
head(), info(), describe() — и за несколько строк кода что-то станет понятно. Но конечно, одного этого недостаточно, чтобы реально оценить качество данных.А что если я скажу, что можно получить полный отчёт по датасету за пару строк кода? В этом поможет
ydata-profiling — библиотека, которая за несколько минут собирает полноценную информацию о датасете и помогает увидеть проблемы ещё до того, как вы начали писать пайплайн или обучать модель.Что именно она показывает:
По сути, это быстрый чек-лист качества данных в одном HTML.
Установите библиотеку, если ранее ей не пользовались:
pip install ydata-profiling
Минимальный код:
import pandas as pd
from ydata_profiling import ProfileReport
df = pd.read_csv("data.csv")
profile = ProfileReport(
df,
noscript="Первичный анализ датасета"
)
Отчёт можно посмотреть прямо в ноутбуке:
profile.to_notebook_iframe()
Или сохранить в HTML, чтобы поделиться с коллегами:
profile.to_file("data_report.html")Это не просто красивая визуализация — на практике такой отчёт экономит часы: сразу видно, где данные «грязные», какие признаки бесполезны, а какие могут создать проблемы для модели.
Если раньше вы начинали анализ с
head() — попробуйте хотя бы раз начать с profiling.Ставьте
Please open Telegram to view this post
VIEW IN TELEGRAM
❤28🔥23 2
Проектируем витрину данных с нуля — уже через 2 часа!
Присоединяйтесь к вебинару с Александром Дарьиным, где мы шаг за шагом спроектируем витрину данных под реальный бизнес‑запрос.
Вы поймёте, как дата‑инженер превращает «сырые таблицы» в удобный слой для аналитиков, и какие навыки и инструменты нужны для таких задач в работе.
➡️ Регистрируйтесь!
📊 Simulative
Присоединяйтесь к вебинару с Александром Дарьиным, где мы шаг за шагом спроектируем витрину данных под реальный бизнес‑запрос.
Вы поймёте, как дата‑инженер превращает «сырые таблицы» в удобный слой для аналитиков, и какие навыки и инструменты нужны для таких задач в работе.
Please open Telegram to view this post
VIEW IN TELEGRAM
Почему LEFT JOIN внезапно превращается в INNER JOIN?
Привет! На связи Вячеслав Потапов, ментор курса «Аналитик данных» 👋
Сегодня решил дать вам разбор ошибок, которые можно часто допускать в начале карьеры: почему
Это важно, если вы считаете конверсии, retention, воронки и пользователей без действий (0 заказов, 0 оплат и т. д.).
Задача: есть таблицы:
🟠
🟠
Хотим посчитать количество заказов на каждого пользователя после 1 января 2025 года, включая тех, у кого 0 заказов. Как это можно сделать?
На вид всё логично, но пользователи без заказов пропадают. Почему так происходит?
➖
➖ Условие
➖ А
В результате
Способ 1 (самый правильный) — условие переносим в JOIN:
Теперь пользователи без заказов останутся и
Способ 2 (на больших данных самый надёжный) — агрегируем до JOIN:
Запомните правило:
Ставьте реакции, если было полезно!
📊 Simulative
Привет! На связи Вячеслав Потапов, ментор курса «Аналитик данных» 👋
Сегодня решил дать вам разбор ошибок, которые можно часто допускать в начале карьеры: почему
LEFT JOIN внезапно превращается в INNER JOIN?Это важно, если вы считаете конверсии, retention, воронки и пользователей без действий (0 заказов, 0 оплат и т. д.).
Задача: есть таблицы:
users: user_id, registration_date;orders: order_id, user_id, order_date.Хотим посчитать количество заказов на каждого пользователя после 1 января 2025 года, включая тех, у кого 0 заказов. Как это можно сделать?
select
u.user_id,
count(o.order_id) as orders_cnt
from users u
left join orders o
on u.user_id = o.user_id
where o.order_date >= '2025-01-01'
group by u.user_id;
На вид всё логично, но пользователи без заказов пропадают. Почему так происходит?
LEFT JOIN сохраняет всех пользователей, WHERE o.order_date >= ... выполняется после JOIN. Для пользователей без заказов:o.order_date = NULL;NULL >= '2025-01-01' даёт NULL;WHERE оставляет только TRUE.В результате
LEFT JOIN превращается в INNER JOIN, и часть данных исчезает. Как правильно?Способ 1 (самый правильный) — условие переносим в JOIN:
select
u.user_id,
count(o.order_id) as orders_cnt
from users u
left join orders o
on u.user_id = o.user_id
and o.order_date >= '2025-01-01'
group by u.user_id;
Теперь пользователи без заказов останутся и
count(o.order_id) даст 0.Способ 2 (на больших данных самый надёжный) — агрегируем до JOIN:
with orders_cnt as (
select
user_id,
count(*) as cnt
from orders
where order_date >= '2025-01-01'
group by user_id
)
select
u.user_id,
coalesce(o.cnt, 0) as orders_cnt
from users u
left join orders_cnt o
on u.user_id = o.user_id;
Запомните правило:
WHERE на правой таблице после LEFT JOIN — это опасно. Проверяйте логику — через фильтры для правой таблицы в ON либо через предварительную агрегацию.Ставьте реакции, если было полезно!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥40👍9❤6 2
Всем привет! На связи команда Simulative 🚀
Видим, что происходит вокруг, и не хотим терять связь с вами. Подписывайтесь на другие наши площадки, где мы продолжаем делиться полезным контентом:
➖ ВКонтакте: https://vk.com/simulative
➖ YouTube: https://www.youtube.com/@simulative
➖ TikTok: https://www.tiktok.com/@simulative_official
➖ Кое-где ещё (найдёте по нику simulative_official)
Будем рады вас видеть!
📊 Simulative
Видим, что происходит вокруг, и не хотим терять связь с вами. Подписывайтесь на другие наши площадки, где мы продолжаем делиться полезным контентом:
Будем рады вас видеть!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5 3🔥1😁1
Media is too big
VIEW IN TELEGRAM
Разобрались, какие ошибки совершают дата-сайентисты в своих резюме 👆
Какую профессию рассмотрим следующей?
📊 Simulative
Какую профессию рассмотрим следующей?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥3 2
Нейросети уже прочно вошли в нашу жизнь, и пришло время использовать их в аналитической работе — ускорить и оптимизировать свои задачи, делегировать рутину и освободить время для главного!
С 20 марта стартует авторский курс от Марины Ермак — руководителя отдела аналитики и машинного обучения. Она прошла путь от стажёра до Head of Analytics & ML и выстроила свой отдел с нуля.
За 6 недель вы:
После курса вы будете решать задачи быстрее и глубже, делегируете рутину нейросетям и сосредоточитесь на стратегических решениях.
📣 А до 20 февраля действуют ранние цены — -20% на курс!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥4 2
Simulative
Всем привет! На связи команда Simulative 👋🏻 В середине февраля мы планируем провести «прожарку» ваших резюме и сопроводительных писем с опытным HR-специалистом. Поэтому ждём ваши резюме на «прожарку»! На вебинаре наш HR Наталья Рожкова в прямом эфире разберёт…
Небольшое напоминание: ждём ваши резюме и сопроводительные письма на «прожарку» ⬆️
Дедлайн уже завтра!
📊 Simulative
Дедлайн уже завтра!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥2 2
Конвейер данных
Привет! На связи Павел Беляев — автор канала Тимлидское об аналитике и ментор курса «Аналитик данных» 👋🏻
Сегодня хочу немного пояснить, почему аналитику нужно хотя бы примерно ориентироваться во многих темах.
Конвейер данных включает в себя следующие основные этапы:
1️⃣ Формирование вопросов
Сначала определяется потребность в информации, подбираются метрики и методы анализа, а также составляется перечень необходимых данных.
2️⃣ Сбор данных
Сырые, необработанные данные собираются из источников в аналитическое хранилище (АХ), где и производится всяческая аналитическая «магия».
В качестве АХ могут использоваться различные системы управления базами данных (СУБД), например, ClickHouse или PostgreSQL.
Запросы к СУБД выполняются на языке SQL. А процессы сбора и транспорта данных осуществляются специальными инструментами, например, Airflow, который «дирижирует» Python-скриптами.
3️⃣ Преобразование данных
Сырые данные «готовятся», а блюдом являются витрины данных: таблицы, содержащие отфильтрованные строки, рассчитанные метрики, сгруппированные сегменты и прочие результаты реализации бизнес-логики.
С данными производятся операции фильтрации, объединения, расчёта, приведения к нужному виду и т. д. Обычно для этого используются языки SQL или Python.
4️⃣ Визуализация
Витрины служат источниками для отчётов или дашбордов, содержащих графики, чарты, диаграммы и прочую «наглядную красоту», которая помогает пользователю быстро сориентироваться в информации и сделать нужные выводы.
Визуализация делается с помощью соответствующих инструментов: Power BI, Data Lens, Looker Studio, Metabase и др.
5️⃣ Анализ
Собственно, процесс изучения и осознания ситуации, а также формирования выводов и ответов на поставленные вопросы. Рассчитанные метрики сопоставляются с некими желаемыми эталонами, изучаются тренды, обнаруживаются и обосновываются выбросы, проседания и т. д.
6️⃣ Решение
На основе выводов решается, достигнуты ли цели, что делать дальше, работает ли новая фича и т. п.
➡️ Узнать больше о курсе: simulative.ru/data-analyst
📊 Simulative
Привет! На связи Павел Беляев — автор канала Тимлидское об аналитике и ментор курса «Аналитик данных» 👋🏻
Сегодня хочу немного пояснить, почему аналитику нужно хотя бы примерно ориентироваться во многих темах.
Ценность аналитики заключается в том, что представитель бизнеса может принимать решения на её основе. А для этого данные следует прогнать через несколько процессов и стадий. Я называю этот путь конвейером данных.
Конвейер данных включает в себя следующие основные этапы:
Сначала определяется потребность в информации, подбираются метрики и методы анализа, а также составляется перечень необходимых данных.
Сырые, необработанные данные собираются из источников в аналитическое хранилище (АХ), где и производится всяческая аналитическая «магия».
В качестве АХ могут использоваться различные системы управления базами данных (СУБД), например, ClickHouse или PostgreSQL.
Запросы к СУБД выполняются на языке SQL. А процессы сбора и транспорта данных осуществляются специальными инструментами, например, Airflow, который «дирижирует» Python-скриптами.
Сырые данные «готовятся», а блюдом являются витрины данных: таблицы, содержащие отфильтрованные строки, рассчитанные метрики, сгруппированные сегменты и прочие результаты реализации бизнес-логики.
С данными производятся операции фильтрации, объединения, расчёта, приведения к нужному виду и т. д. Обычно для этого используются языки SQL или Python.
Витрины служат источниками для отчётов или дашбордов, содержащих графики, чарты, диаграммы и прочую «наглядную красоту», которая помогает пользователю быстро сориентироваться в информации и сделать нужные выводы.
Визуализация делается с помощью соответствующих инструментов: Power BI, Data Lens, Looker Studio, Metabase и др.
Собственно, процесс изучения и осознания ситуации, а также формирования выводов и ответов на поставленные вопросы. Рассчитанные метрики сопоставляются с некими желаемыми эталонами, изучаются тренды, обнаруживаются и обосновываются выбросы, проседания и т. д.
На основе выводов решается, достигнуты ли цели, что делать дальше, работает ли новая фича и т. п.
Путь данных весьма насыщен приключениями, и этим он интересен! Курс «Аналитик данных» достаточно комплексно составлен и затрагивает все эти этапы, чем меня и впечатлил.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3🔥3 1
Мы готовы к «прожарке» резюме, а вы?
Присоединяйтесь к вебинару 18 февраля, где HR-эксперт Наталья Рожкова разберёт ваши резюме и сопроводительные письма, оценит их глазами рекрутера и покажет, какие ошибки мешают получить оффер.
На вебинаре вы:
➖ Посмотрите разбор трёх реальных резюме аналитиков и увидите сильные и слабые стороны каждого;
➖ Узнаете, как HR читает ваше резюме и какие сигналы ищет на этапе отбора;
➖ Поймёте, как адаптировать описание опыта под конкретную роль — от junior до senior-аналитика;
➖ Получите рекомендации по оформлению и структуре резюме, чтобы пройти скрининг за первые 10 секунд;
➖ Разберётесь, какую роль играет сопроводительное письмо и как написать его без «воды»;
➖ Сможете задать вопросы HR‑эксперту и получить фидбэк в прямом эфире.
❗️ Встречаемся 18 февраля в 19:00 МСК.
➡️ Регистрируйтесь!
📊 Simulative
Присоединяйтесь к вебинару 18 февраля, где HR-эксперт Наталья Рожкова разберёт ваши резюме и сопроводительные письма, оценит их глазами рекрутера и покажет, какие ошибки мешают получить оффер.
На вебинаре вы:
💬 А всем зарегистрировавшимся дарим полезный материал — чек-лист из 15 пунктов для самостоятельной проверки вашего резюме.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥3 1
В мире данных тоже есть место любви. Отобрали для вас лучшие валентинки для аналитиков, которые поймут только свои
Отправьте открытку любимым аналитикам, и пусть 14 февраля будет не только про эмоции, но и про точные метрики любви!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14🔥7😁5