Отвал клиентов сиквел
Помните задачку по отвалу клиентов?
@analysts_world51Так вот теперь есть продолжение к той задаче. На этот раз нужно собрать ту же статистику, но по отвалу клиентов, админы которых входят в несколько определенных групп. ✅
Каждый свод код оставляйте с комментариями, чтобы потом вспомнить, что вы делали и если нужно накрутить на него еще дополнительный скрипт 😜
Сначала мы опять смотрим клиентов, кто покупал тарифы. Опять ищем sql запросом (датафрейм df_finish), все оплаты тарифов с января 2022 года.
Потом находим кто у них является админами df_admins. Ищем админов, которые входят в интересующие нас группы df_in_groups и мерджим с df_admins.
df_merge1 = pd.merge(df_admins,df_in_groups, on = ['user_id'], how = 'left').fillna(0)
Получаем такую табличку. В in_group будет 0 или 1, то есть админ входит в группу или нет
user_id | account_id | in_group
Теперь можем составить список аккаунтов, у которых кто-то из админов в группах.
accounts_list_groups = tuple(set(df_merge1[df_merge1['in_group'] == 1]['account_id']))
Оставляем клиентов из df_finish, которые входят в этот список
с помощью isin
df_finish_in_groups = df_finish[df_finish['account_id'].isin(accounts_list_groups)]
Есть еще способ c query. К списку приписываем @ и тогда все срабатывает также
df_finish_in_groups=df_finish.query('account_id in @accounts_list_groups')
А потом уже делаем все по клиентам как в прошлый раз, группируем и пр. 🍀
df_part1_in_group = df_finish_in_groups.groupby(['month'],as_index = False).agg({"account_id":"count"})
Обсуждение 7
Обсуждение не доступно в веб-версии. Чтобы написать комментарий, перейдите в приложение Telegram.
Обсудить в Telegram