Как это устроено: кто все эти люди?
Итак, вы решили идти в Data.
Только на “Data” начинается очень много вакансий — и, кажется, работы там на десять человек. Давайте посмотрим, кто есть кто на рынке дата-труда.
Представьте, что работа с данными — это дом. Да-да, со стенами и крышей.
➡️ Кто проектирует дом?
Конечно, архитектор. Data Architect проектирует системы хранения данных, а потом отвечает за их стабильность, безопасность и доступность. Он умеет работать с базами данных и строить пайплайны (планы процесса работы, которые потом использует команда). Архитектор нужен для работы с теми самыми большими данными. Его технологии: SQL, NoSQL, Spark, Hive, ETL/ELT.
➡️ Кто строит дом?
Строители и инженеры. Data Engineer воплощает план архитектора: собирает и структурирует данные, поддерживает и обновляет хранилище и пайплайны. Инженер тесно сотрудничает с аналитиками, обеспечивая им доступ к структурированным данным. Он умеет работать с Java, Scala, SQL, noSQL, Python, R.
➡️ И кто живет в этом доме?
В первую очередь — аналитики. Data Analyst анализирует данные и составляет отчеты, обрабатывает и готовит данные для анализа. Он виртуоз математической статистики, а еще умеет пользоваться BI-инструментами (Tableau, PowerBI, Metabase и другие).
Соседи аналитика — ученые. Data Scientist проводит исследования, проверяет гипотезы и строит прогнозы. Он эксперт статистического анализа и теории вероятностей, знает методы машинного обучения и отлично владеет R и Python.
Некоторые специалисты работают на стыке этих позиций (например, Analytics Engineer), некоторые выбирают узкую область (BI-специалист/визуализатор данных), а в соседнем доме поселился целый департамент машинного обучения.
Почитать больше про этих и других людей можно тут.
Ну что, кем захотелось поработать? А если уже работаете в данных — расскажете нам, как выбрали профессию?👀 Ждем ваших мыслей в комментариях!
#into_data
Итак, вы решили идти в Data.
Только на “Data” начинается очень много вакансий — и, кажется, работы там на десять человек. Давайте посмотрим, кто есть кто на рынке дата-труда.
Представьте, что работа с данными — это дом. Да-да, со стенами и крышей.
Конечно, архитектор. Data Architect проектирует системы хранения данных, а потом отвечает за их стабильность, безопасность и доступность. Он умеет работать с базами данных и строить пайплайны (планы процесса работы, которые потом использует команда). Архитектор нужен для работы с теми самыми большими данными. Его технологии: SQL, NoSQL, Spark, Hive, ETL/ELT.
Строители и инженеры. Data Engineer воплощает план архитектора: собирает и структурирует данные, поддерживает и обновляет хранилище и пайплайны. Инженер тесно сотрудничает с аналитиками, обеспечивая им доступ к структурированным данным. Он умеет работать с Java, Scala, SQL, noSQL, Python, R.
В первую очередь — аналитики. Data Analyst анализирует данные и составляет отчеты, обрабатывает и готовит данные для анализа. Он виртуоз математической статистики, а еще умеет пользоваться BI-инструментами (Tableau, PowerBI, Metabase и другие).
Соседи аналитика — ученые. Data Scientist проводит исследования, проверяет гипотезы и строит прогнозы. Он эксперт статистического анализа и теории вероятностей, знает методы машинного обучения и отлично владеет R и Python.
Некоторые специалисты работают на стыке этих позиций (например, Analytics Engineer), некоторые выбирают узкую область (BI-специалист/визуализатор данных), а в соседнем доме поселился целый департамент машинного обучения.
Почитать больше про этих и других людей можно тут.
Ну что, кем захотелось поработать? А если уже работаете в данных — расскажете нам, как выбрали профессию?
#into_data
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤5😱3
Как понять, что вы переросли свою позицию?
Речь не о повышении зарплаты или смене работодателя: просто понять, в какой момент вы выросли из своей нынешней позиции бывает нелегко.
На что можно ориентироваться с осторожностью?
🔵 стаж: он действительно коррелирует с грейдом, но и ваши собственные потребности, ресурсы и организация работы в вашей компании влияют на время, после которого стоит задуматься о росте.
🔵 стагнация обучения: скорость измеримого роста скиллов обратно пропорциональна опыту, и не всякая должность предполагает непрерывное повышение технической квалификации.
🔵 скука: хороший показатель, что вы переросли свою роль — но еще она может говорить о выгорании, плохой организации в компании, не соответствующих вашим навыкам задачах. Важно правильно определить её причину!
А что точно говорит о том, что можно двигаться дальше?
🔵 уверенность: вы не просто закрыли все пробелы в опыте, нужные для прыжка на следующий грейд, но и чувствуете, что ресурсов у вас больше, чем вы тратите на текущие задачи — новая ответственность не пугает.
🔵 универсальность: вы можете подхватить чужие обязанности и не потерять производительности, подменить руководителя без специальной подготовки — значит, вашего опыта хватает не только на вашу должность.
🔵 внутренняя потребность: наверное, самый важный момент — если вы думаете не (только) о количестве знаков в зарплате и красивой строке в резюме, а с любопытством представляете, как будете делать что-то новое — нужно к этому идти!
Вот что говорит наша HR-специалистка:
Развитие специалиста — всегда индивидуальная история. Расскажите нам о ваших планах и повышениях, удачных и не очень!
#HR_на_связи
Речь не о повышении зарплаты или смене работодателя: просто понять, в какой момент вы выросли из своей нынешней позиции бывает нелегко.
На что можно ориентироваться с осторожностью?
А что точно говорит о том, что можно двигаться дальше?
Вот что говорит наша HR-специалистка:
Руководство может само предложить вам повышение, глядя на результаты, проактивность, рост технических навыков с момента приема на работу или последнего повышения и — прежде всего — софт-скиллы.
Но желание взять ответственность за собственный рост — составить четкий план, обсудить с руководителем свои результаты, интересы и цели — и есть самый главный показатель, что вы готовы к здоровому развитию.
Развитие специалиста — всегда индивидуальная история. Расскажите нам о ваших планах и повышениях, удачных и не очень!
#HR_на_связи
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2🔥2
Тестовые задания: Нормально ли использовать ChatGPT, чтобы сделать тестовое?
Вопрос с подвохом, ведь использовать-то можно по-разному. Открещиваться от ИИ точно бессмысленно. Такой инструмент под рукой экономит аналитику данных много времени и сил на рутинных расчетах, а хороший специалист умеет определить такие задачи и грамотно поставить их роботу, чтобы максимизировать пользу.
Что же получается?
Парадоксально, использовать ChatGPT нормально и даже полезно, если вы можете выполнить задачу и без него. Такой подход даже не обязательно скрывать — работодатель вряд ли откажется от сотрудника, который знает, как грамотно делегировать рутинные задачи чатику.
«Списывать» же у ИИ бесполезно, а копипастить его без редактуры — тем более. Если копипаст не очевиден по тексту, то точно обнаружится на практике, когда вы не сможете повторить решение или объяснить ход мысли. Даже при лучшем исходе работа, которую вы не можете выполнять сами, вряд ли принесет вам полезный опыт.
Вот что говорит Николай Валиотти:
А Анатолий Карпов из @KarpovCourses отмечает, что
🔜 Послушать еще мыслей на эту тему можно в этом выпуске подкаста Data Heroes.
А вы стали бы использовать ИИ в тестовом? Или, может, уже использовали и знаете, как сделать это правильно?👀
#HR_на_связи
Вопрос с подвохом, ведь использовать-то можно по-разному. Открещиваться от ИИ точно бессмысленно. Такой инструмент под рукой экономит аналитику данных много времени и сил на рутинных расчетах, а хороший специалист умеет определить такие задачи и грамотно поставить их роботу, чтобы максимизировать пользу.
Что же получается?
Парадоксально, использовать ChatGPT нормально и даже полезно, если вы можете выполнить задачу и без него. Такой подход даже не обязательно скрывать — работодатель вряд ли откажется от сотрудника, который знает, как грамотно делегировать рутинные задачи чатику.
«Списывать» же у ИИ бесполезно, а копипастить его без редактуры — тем более. Если копипаст не очевиден по тексту, то точно обнаружится на практике, когда вы не сможете повторить решение или объяснить ход мысли. Даже при лучшем исходе работа, которую вы не можете выполнять сами, вряд ли принесет вам полезный опыт.
Вот что говорит Николай Валиотти:
Иногда я встречаю тестовые написанные примерно таким образом:
Некоторая Мысль: Тут Объяснение Мысли.
Если вижу такое — сразу отсеиваю кандидата, т.к. это кусок текста на 100% сгенерированный ChatGPT без какой-либо редактуры. Зачем мне роботы в команде?
А Анатолий Карпов из @KarpovCourses отмечает, что
с большинством простых задачек на код нынешние LLM справятся спокойно, да еще и опишут процесс решения. Поэтому ответов на тестовые, хорошо сделанных нейронкой, теперь приходит заметно больше. Но проблема здесь не в ИИ, а в подходе кандидатов к работе — и теперь перед рекрутерами стоит задача придумать новые, более эффективные форматы ТЗ.
А вы стали бы использовать ИИ в тестовом? Или, может, уже использовали и знаете, как сделать это правильно?
#HR_на_связи
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥2🥰2💯1
Вакансия: Data Engineer (Middle) в Valiotti Analytics
Valiotti Analytics — компания, которая строит кастомные системы аналитики данных от инжиниринга до датавиза для digital-компаний по всему миру.
Сейчас мы в поисках Мидл дата-инженера!
Что нужно делать?
🔵 Создавать и поддерживать ETL/ELT-процессы.
🔵 Cоздавать и редактировать SQL-процедуры для наполнения таблиц хранилища.
🔵 Следить за корректностью работы отчетов (проверять консистентность данных в источнике).
🔵 Поддерживать и видоизменять имеющиеся модели данных.
🔵 Решать проблемы импорта данных.
🔵 Создавать и сопровождать витрины данных: настраивать индексы, оптимизировать таблицы, пересчитывать данные, предоставлять права доступа.
🔵 Проектировать модели данных для новых сущностей хранилища.
🔵 Документировать разработанный код.
Какие требования?
🔵 Уверенное владение SQL, Python, Apache Airflow 2, bash.
🔵 Опыт разработки ETL, проектирования и разработки хранилищ данных и аналитической отчетности (с примерами кейсов).
🔵 Разговорный и письменный английский B2 и выше.
🔵 Высшее техническое или другое релевантное образование.
🔵 Поможет опыт работы с Kafka, S3 и dbt.
Какие условия?
🔵 Полная занятость.
🔵 Оплачиваемый отпуск и больничные.
🔵 Корпоративный английский.
🔵 Полностью удаленная работа.
🔜 Откликнуться можно здесь.
Valiotti Analytics — компания, которая строит кастомные системы аналитики данных от инжиниринга до датавиза для digital-компаний по всему миру.
Сейчас мы в поисках Мидл дата-инженера!
Что нужно делать?
Какие требования?
Какие условия?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2🔥1
Тестовые задания: задачка на SQL и продуктовые метрики
У вас есть две таблицы:
🔵 логирование всех входов игрока в игру: в колонке
🔵 таблица всех платежей игроков: в колонке
Нужно написать код на SQL, который построит таблицу с расчетом LTV для недельной когорты новых игроков.
Что проверяет такая задача?
🔵 базовое знание SQL
🔵 умение составить расчет заданной метрики
Как можно решить?
1. Вспомним, что такое LTV: метрика Lifetime Value демонстрирует, сколько прибыли компания получила от клиента за заданное время. Она показывает эффективность маркетинга и компании в целом. Cчитается так: общий доход за период разделить на количество покупателей за этот же период.
2. Посчитаем суммарную выручку на N-й день после входа в игру для каждой когорты юзеров. Когорта — неделя первого входа юзера в игру. Обычно начальной точкой считается дата установки игры, но в задании она не дана.
3. Посчитаем для каждой когорты число юзеров в ней (без привязки к дню).
4. Поcчитаем кумулятивную выручку каждой когорты в динамике по дням.
5. Результаты разделим на количество юзеров в когорте — получатся значения LTV.
➡️ Код такого решения будет выглядеть так:
Задавайте вопросы и предлагайте ваши решения в комментариях!
@leftjoin_career
#разбор_тестового
У вас есть две таблицы:
created дата и время первого входа в игру; в колонке user_id идентификатор игрока,created дата и время платежа; в колонке user_id идентификатор игрока.Нужно написать код на SQL, который построит таблицу с расчетом LTV для недельной когорты новых игроков.
Что проверяет такая задача?
Как можно решить?
1. Вспомним, что такое LTV: метрика Lifetime Value демонстрирует, сколько прибыли компания получила от клиента за заданное время. Она показывает эффективность маркетинга и компании в целом. Cчитается так: общий доход за период разделить на количество покупателей за этот же период.
2. Посчитаем суммарную выручку на N-й день после входа в игру для каждой когорты юзеров. Когорта — неделя первого входа юзера в игру. Обычно начальной точкой считается дата установки игры, но в задании она не дана.
3. Посчитаем для каждой когорты число юзеров в ней (без привязки к дню).
4. Поcчитаем кумулятивную выручку каждой когорты в динамике по дням.
5. Результаты разделим на количество юзеров в когорте — получатся значения LTV.
first_login as (
select user_id, min(created) as first_log from login_info group by 1
),
cohorts as (
select date_trunc('week', first_log)::date as first_log_week,
count(distinct user_id) as users
from first_login
group by 1
)
select distinct
c.first_log_week as Week_start,
pi.created - fl.first_log as Day_after,
sum(pi.sum_rub) over(partition by c.first_log_week order by pi.created) / users as LTV
from first_login fl
left join payment_info pi using(user_id)
left join cohorts c on c.first_log_week=date_trunc('week', fl.first_log)::date
order by 1,2
Задавайте вопросы и предлагайте ваши решения в комментариях!
@leftjoin_career
#разбор_тестового
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍5🔥3
HR на связи: Как не стоит проходить собеседования
Собрали для вас вредных советов из личного опыта наших эйчаров, которые точно помогут рекрутерам запомнить вас надолго!🔥
Лейте побольше воды
Ни в коем случае не готовьте краткий тезисный рассказ о своем опыте заранее, сыпьте всеми терминами и подробностями, которые вспомните на ходу.
Не слушайте рекрутера
Зачем дослушивать вопрос и тратить время, если можно побыстрее начать говорить — а то ведь иначе не успеете рассказать про все-все-все, что пришло в голову.
Уходите от ответов
Не знаете, что сказать? Ни в коем случае не задавайте уточняющих вопросов. Лучше потяните время, пока в ответ не махнут рукой.
Избегайте разговоров про тестовое, если не уверены в нем
Вы же его уже сделали, что еще им нужно? И вообще, у вас было недостаточно информации, и вы уже и не помните, что там написали.
Следуйте NDA
Будьте послушны и не раскрывайте никаких деталей с прошлого места работы. Никто не должен узнать, чем именно вы там занимались, и тем более — что из этого вышло!
Ушли с работы или проекта, о котором говорите?
Все равно упомяните его — зачем вам знать, какой вышел результат, это же все равно опыт!
Не бойтесь конфликта
Понимаете, что разговор не клеится? Расстраиваетесь? Лучшая защита — нападение! Спросите, почему они придираются — а то вдруг им казалось, что все идет нормально и вы просто волнуетесь.
Эффективнее всего применять все советы сразу — теперь вы точно выделитесь на фоне других кандидатов. Удачи!
P.S. А если серьезно —постарайтесь запомниться рекрутерам своей уверенностью, готовностью к беседе и профессиональным отношением. И, конечно, расскажите нам про свои казусы с собеседований, которые проходили или проводили! ❤️
🔜 @leftjoin_career
#HR_на_связи
Собрали для вас вредных советов из личного опыта наших эйчаров, которые точно помогут рекрутерам запомнить вас надолго!
Лейте побольше воды
Ни в коем случае не готовьте краткий тезисный рассказ о своем опыте заранее, сыпьте всеми терминами и подробностями, которые вспомните на ходу.
Не слушайте рекрутера
Зачем дослушивать вопрос и тратить время, если можно побыстрее начать говорить — а то ведь иначе не успеете рассказать про все-все-все, что пришло в голову.
Уходите от ответов
Не знаете, что сказать? Ни в коем случае не задавайте уточняющих вопросов. Лучше потяните время, пока в ответ не махнут рукой.
Избегайте разговоров про тестовое, если не уверены в нем
Вы же его уже сделали, что еще им нужно? И вообще, у вас было недостаточно информации, и вы уже и не помните, что там написали.
Следуйте NDA
Будьте послушны и не раскрывайте никаких деталей с прошлого места работы. Никто не должен узнать, чем именно вы там занимались, и тем более — что из этого вышло!
Ушли с работы или проекта, о котором говорите?
Все равно упомяните его — зачем вам знать, какой вышел результат, это же все равно опыт!
Не бойтесь конфликта
Понимаете, что разговор не клеится? Расстраиваетесь? Лучшая защита — нападение! Спросите, почему они придираются — а то вдруг им казалось, что все идет нормально и вы просто волнуетесь.
Эффективнее всего применять все советы сразу — теперь вы точно выделитесь на фоне других кандидатов. Удачи!
P.S. А если серьезно —
#HR_на_связи
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥4😡3🥰1😁1
Допускали хоть одну ошибку на собесах из поста выше?
Anonymous Poll
70%
Признаюсь, было дело...
30%
Ни разу, у меня все искренне и по делу!
❤2👍2🥰1
Teamwork: как дата-команда работает над сложными проектами
О том, чем вообще можно заниматься в данных, мы уже говорили. Сегодня посмотрим на то, как разные специалисты работают вместе в агенстве, которое строит сквозную аналитику для бизнеса на аутсорсе. Например, мы в Valiotti Analytics делали именно это для эдтех-стартапа Refocus.
Команда проекта:
🔵 Проджект-менеджер: связь между командой и заказчиком, организация созвонов.
🔵 Лид: организация работы команды и технические консультации.
🔵 Инженер: настройка сервера и хранилища данных, создание пайплайнов.
🔵 Аналитики: написание кода для выгрузки данных из хранилища, создание витрин данных и дашбордов, предиктивная аналитика.
Этапы проекта:
🔵 Определение целей заказчика
🔵 Аудит существующей системы
🔵 Выбор инструментов
🔵 Визуализация
🔵 Настройка и автоматизация процессов
🔵 Поддержка системы
Коммуникация
Проектный формат значит плотный контакт с клиентом и множество дедлайнов. Получение доступов, сбор требований и правок после каждой итерации работ — база не только для проджекта и лида, а для всех ребят в команде. Поэтому кроме внутреннего канала связи нужен общий с заказчиком, чтобы у всех был к нему доступ.
Задачи
Агентство работает над многими проектами параллельно, и нагрузка распределяется с учетом опыта и занятости спецов. Имеет смысл делить задачи не по используемым технологиям, а по содержанию: например, один аналитик работает только с данными по продажам, другой — по прогрессу студентов, а инженер подключается по запросу коллег на разных проектах. Важно держать команду в курсе и уметь передавать работу друг другу для равномерной нагрузки.
Софт-скиллы
В проектной работе над аналитикой, по сравнению с другими форматами, особенно важны коммуникабельность и способность к самоорганизации, умение переключаться между тасками и разобраться в разных инструментах.
Ну как, вам бы подошел такой формат работы — или хотели бы в обычный отдел аналитики?👀
#into_data
О том, чем вообще можно заниматься в данных, мы уже говорили. Сегодня посмотрим на то, как разные специалисты работают вместе в агенстве, которое строит сквозную аналитику для бизнеса на аутсорсе. Например, мы в Valiotti Analytics делали именно это для эдтех-стартапа Refocus.
Команда проекта:
Этапы проекта:
Коммуникация
Проектный формат значит плотный контакт с клиентом и множество дедлайнов. Получение доступов, сбор требований и правок после каждой итерации работ — база не только для проджекта и лида, а для всех ребят в команде. Поэтому кроме внутреннего канала связи нужен общий с заказчиком, чтобы у всех был к нему доступ.
Задачи
Агентство работает над многими проектами параллельно, и нагрузка распределяется с учетом опыта и занятости спецов. Имеет смысл делить задачи не по используемым технологиям, а по содержанию: например, один аналитик работает только с данными по продажам, другой — по прогрессу студентов, а инженер подключается по запросу коллег на разных проектах. Важно держать команду в курсе и уметь передавать работу друг другу для равномерной нагрузки.
Софт-скиллы
В проектной работе над аналитикой, по сравнению с другими форматами, особенно важны коммуникабельность и способность к самоорганизации, умение переключаться между тасками и разобраться в разных инструментах.
Ну как, вам бы подошел такой формат работы — или хотели бы в обычный отдел аналитики?
#into_data
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5❤2👏1
Telegraph
Как правильно работать с LinkedIn?
Вы спрашивали, и мы отвечаем! LinkedIn — одна из крупнейших платформ для нетворкинга и поиска работы. Правда, это не агрегатор вакансий, поэтому эффективно использовать свой профиль здесь сложнее, чем просто рассылать резюме. С чего же начать? Оформление…
По просьбам трудящихся мы подготовили гайд, который поможет вам наполнить и продуктивно использовать страницу на LinkedIn.
В нем есть все, что нужно для начала — советы по оформлению, раскрутке и нетворкингу. Удачного пользования!
Понравилось? Сохраняйте, чтобы не потерять, и расскажите друзьям!🔥
🔜 @leftjoin_career
В нем есть все, что нужно для начала — советы по оформлению, раскрутке и нетворкингу. Удачного пользования!
Понравилось? Сохраняйте, чтобы не потерять, и расскажите друзьям!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤6🔥4👏1
Британские ученые пока еще не установили причину стремления к непродуктивному «улучшайзингу». Как только появятся результаты — сразу же сообщим вам.
Продуктивной недели 🚀
🔜 @leftjoin_career
Продуктивной недели 🚀
Please open Telegram to view this post
VIEW IN TELEGRAM
😁11❤5🔥3🏆1
Вакансия: Forest Data Analyst в Land Life Company
Посреди рабочей недели обычно хочется разлогиниться и уехать жить в лес, не так ли?
А вот Лесной аналитик данных может так прямо на работе. В компании Land Life из Нидерландов, которая занимается восстановлением разрушенных ландшафтов, как раз существует такая позиция.
Что нужно делать?
🔵 Собирать и обрабатывать данные по росту и здоровью леса.
🔵 Участвовать в сборе образцов почвы и дерева на местах посадки леса.
🔵 Строить и анализировать модели данных, составлять отчёты.
Какие требования?
🔵 Владение Python, R.
🔵 5-10 лет опыта в статистике и аналитике данных.
🔵 Способность объяснять сложную информацию просто.
🔵 PhD в лесной экологии или смежной сфере.
Какие условия?
🔵 Возможность трогать траву ежедневно.
🔵 А что ещё нужно человеку?
@leftjoin_career
Посреди рабочей недели обычно хочется разлогиниться и уехать жить в лес, не так ли?
А вот Лесной аналитик данных может так прямо на работе. В компании Land Life из Нидерландов, которая занимается восстановлением разрушенных ландшафтов, как раз существует такая позиция.
Что нужно делать?
Какие требования?
Какие условия?
@leftjoin_career
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🔥10😁5😡1
Тестовые задания: задачка на Python и когортный анализ
На прошлой неделе мы разбирали задачку на SQL и считали LTV для недельной когорты новых игроков. Сегодня те же вводные данные, но другая задача.
В этой задаче нужно написать код на Python, который построит таблицу когортного анализа удержания новичков. Примерный вид итоговой таблицы: в колонке Week_start неделя первого входа игрока в игру — когорта; следующие 30 колонок — дни после первого входа.
Что проверяет такая задача?
🔵 базовое знание Python
🔵 понимание сути когортного анализа
Как можно решить?
1️⃣ Берем датафрейм, соответствующий таблице, в которой есть логирование всех входов игрока в игру.
2️⃣ Получаем дату первого захода пользователя и определяем неделю первого входа в качестве когорты.
3️⃣ Считаем количество дней между первым входом и остальными заходами пользователя.
4️⃣ Формируем таблицу в соответствии с датафреймом, где 0 день соответствует размеру когорты.
5️⃣ Корректируем названия столбцов и заполняем нулями пустые значения, где Day <= (current_date - первый день недели).dt.days.
Наш вариант решения:
Задавайте вопросы и предлагайте ваши способы решения в комментариях!
#разбор_тестового
На прошлой неделе мы разбирали задачку на SQL и считали LTV для недельной когорты новых игроков. Сегодня те же вводные данные, но другая задача.
В этой задаче нужно написать код на Python, который построит таблицу когортного анализа удержания новичков. Примерный вид итоговой таблицы: в колонке Week_start неделя первого входа игрока в игру — когорта; следующие 30 колонок — дни после первого входа.
Что проверяет такая задача?
Как можно решить?
Наш вариант решения:
users_first_login = df.groupby('user_id').agg(
first_login = ('created', 'min')
).reset_index()
users_first_login['week_start'] = users_first_login['first_login'].dt.to_period('W').apply(
lambda r: r.start_time)
df_final = pd.merge(users_first_login, df, how='inner', on='user_id')
df_final['day'] = (df_final['created'] - df_final['first_login']).dt.days
df_final_pivot = pd.pivot_table(df_final, values='user_id', index='week_start',
columns='day', aggfunc='count')
df_final_pivot = df_final_pivot.astype('Int32')
df_final_pivot.columns = list(map(lambda x: 'Day_' + str(x), df_final_pivot.columns))
Задавайте вопросы и предлагайте ваши способы решения в комментариях!
#разбор_тестового
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤4🔥3