Simulative – Telegram
7.37K subscribers
1.77K photos
77 videos
1 file
1.35K links
Мы — образовательная платформа в сфере аналитики Simulative: simulative.ru

Создаём курсы-симуляторы, где обучаем не на «апельсинках», а на кейсах из реального бизнеса.

Наш уютный чат: @itresume_chat
Поддержка: @simulative_support
Download Telegram
Почему LEFT JOIN внезапно превращается в INNER JOIN?

Привет! На связи Вячеслав Потапов, ментор курса «Аналитик данных» 👋

Сегодня решил дать вам разбор ошибок, которые можно часто допускать в начале карьеры: почему 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 либо через предварительную агрегацию.

Ставьте реакции, если было полезно!

📊 Simulative
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥40👍962
Всем привет! На связи команда 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
53🔥1😁1
Media is too big
VIEW IN TELEGRAM
Разобрались, какие ошибки совершают дата-сайентисты в своих резюме 👆

Какую профессию рассмотрим следующей?

📊 Simulative
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥32
🧠 Новый курс: ИИ для анализа данных

Нейросети уже прочно вошли в нашу жизнь, и пришло время использовать их в аналитической работе — ускорить и оптимизировать свои задачи, делегировать рутину и освободить время для главного!

С 20 марта стартует авторский курс от Марины Ермак — руководителя отдела аналитики и машинного обучения. Она прошла путь от стажёра до Head of Analytics & ML и выстроила свой отдел с нуля.

За 6 недель вы:
Узнаете, как быстро писать код на Pandas и SQL с помощью ChatGPT, Claude и Gemini;
Освоите современные приёмы промптинга, чтобы получать точные ответы от ИИ;
Визуализируете данные с помощью ChatGPT, Gemini и NotebookLM;
Поймёте, какой ИИ-сервис выбрать под конкретную задачу — и получите портфель инструментов, к которым сможете обращаться в любое время.

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

📣 А до 20 февраля действуют ранние цены — -20% на курс!


🟡 Посмотреть программу и зарегистрироваться: simulative.ru/ai-for-da

📊 Simulative
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥42
Конвейер данных

Привет! На связи Павел Беляев — автор канала Тимлидское об аналитике и ментор курса «Аналитик данных» 👋🏻

Сегодня хочу немного пояснить, почему аналитику нужно хотя бы примерно ориентироваться во многих темах.

Ценность аналитики заключается в том, что представитель бизнеса может принимать решения на её основе. А для этого данные следует прогнать через несколько процессов и стадий. Я называю этот путь конвейером данных.


Конвейер данных включает в себя следующие основные этапы:

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
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3🔥31
Мы готовы к «прожарке» резюме, а вы?

Присоединяйтесь к вебинару 18 февраля, где HR-эксперт Наталья Рожкова разберёт ваши резюме и сопроводительные письма, оценит их глазами рекрутера и покажет, какие ошибки мешают получить оффер.

На вебинаре вы:
Посмотрите разбор трёх реальных резюме аналитиков и увидите сильные и слабые стороны каждого;
Узнаете, как HR читает ваше резюме и какие сигналы ищет на этапе отбора;
Поймёте, как адаптировать описание опыта под конкретную роль — от junior до senior-аналитика;
Получите рекомендации по оформлению и структуре резюме, чтобы пройти скрининг за первые 10 секунд;
Разберётесь, какую роль играет сопроводительное письмо и как написать его без «воды»;
Сможете задать вопросы HR‑эксперту и получить фидбэк в прямом эфире.

❗️ Встречаемся 18 февраля в 19:00 МСК.

💬 А всем зарегистрировавшимся дарим полезный материал — чек-лист из 15 пунктов для самостоятельной проверки вашего резюме.


➡️ Регистрируйтесь!

📊 Simulative
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥31
💌 С днём святого Валентина!

В мире данных тоже есть место любви. Отобрали для вас лучшие валентинки для аналитиков, которые поймут только свои ❤️

Отправьте открытку любимым аналитикам, и пусть 14 февраля будет не только про эмоции, но и про точные метрики любви!

📊 Simulative
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
14🔥7😁5