Смотрите, что я нашла!
В воскресенье будет стрим с лайвкодингом! Школу эту не знаю, это не реклама, если что, но у них будет в качестве учителя аналитик Глеб Михайлов. Мне о нем один дата сайентист рассказывал, что у него классный курс по SQL на Юдеми есть. Курс был платный, но не дорого, около 500р. Очень хвалили его курс, качественный типа. Я хотела купить, но не успела тогда - как раз карты наши не стали работать на иностранных сайтах.
📌 Так вот ЗАВТРА в 19:00 будет стрим и Симулятор «Аналитик данных с Глебом Михайловым с лайвкодингом!
Глеб будет делать распаковку симулятора и решать задачи на SQL.
Обещают каждому участнику доступ к главе и к задачам, чтобы вместе с ним кодить 🤟🏻
Всегда ввязывайтесь во все движухи, хакатоны и такие вот бесплатные штуки!
В воскресенье будет стрим с лайвкодингом! Школу эту не знаю, это не реклама, если что, но у них будет в качестве учителя аналитик Глеб Михайлов. Мне о нем один дата сайентист рассказывал, что у него классный курс по SQL на Юдеми есть. Курс был платный, но не дорого, около 500р. Очень хвалили его курс, качественный типа. Я хотела купить, но не успела тогда - как раз карты наши не стали работать на иностранных сайтах.
📌 Так вот ЗАВТРА в 19:00 будет стрим и Симулятор «Аналитик данных с Глебом Михайловым с лайвкодингом!
Глеб будет делать распаковку симулятора и решать задачи на SQL.
Обещают каждому участнику доступ к главе и к задачам, чтобы вместе с ним кодить 🤟🏻
Всегда ввязывайтесь во все движухи, хакатоны и такие вот бесплатные штуки!
👍19
Долгожданная пятница! 🌟
Как не поговорить в пятницу о..понедельниках 😂
Дело в том, что в одном отчете я вытаскиваю данные за каждую неделю и проставлю там даты понедельников. Надоело это делать вручную и вот какое решение я нашла.
Воспользуемся функцией python strftime() и функцией pandas.date_range() для создания диапазона дат в pandas.
Задаю начальную и конечную дату периода.
start_date = '2022-01-03'
end_date = datetime.datetime.now() - это текущий день
Потом циклом с частотой в 7 дней (7D) проходимся по всем датам в промежутке и собираем понедельники.
week_lst = [d.strftime('%Y-%m-%d') for d in pd.date_range(start_date,end_date, freq = '7D')]
Тип week_lst будет представлять собой лист.
А потом из этого листа делаем dataframe (табличку):
df_weeks = pd.DataFrame({'Пн':week_lst})
Ну и посмотрим, что получилось:
df_weeks.tail() - показать последние строки сформированной таблицы.
На прикрепленной картинке видно как срабатывает запрос - видны последние пять понедельников.
Как не поговорить в пятницу о..понедельниках 😂
Дело в том, что в одном отчете я вытаскиваю данные за каждую неделю и проставлю там даты понедельников. Надоело это делать вручную и вот какое решение я нашла.
Воспользуемся функцией python strftime() и функцией pandas.date_range() для создания диапазона дат в pandas.
Задаю начальную и конечную дату периода.
start_date = '2022-01-03'
end_date = datetime.datetime.now() - это текущий день
Потом циклом с частотой в 7 дней (7D) проходимся по всем датам в промежутке и собираем понедельники.
week_lst = [d.strftime('%Y-%m-%d') for d in pd.date_range(start_date,end_date, freq = '7D')]
Тип week_lst будет представлять собой лист.
А потом из этого листа делаем dataframe (табличку):
df_weeks = pd.DataFrame({'Пн':week_lst})
Ну и посмотрим, что получилось:
df_weeks.tail() - показать последние строки сформированной таблицы.
На прикрепленной картинке видно как срабатывает запрос - видны последние пять понедельников.
👍8🔥2
Дата сайентисты vs аналитики 😜
Работаю я аналитиком данных, а училась на data scientist. Почему же я не пошла сразу в дата сайнтисты? Ответ прост – туда очень сложно пробиться и нужно много знать, а еще иметь уже готовый опыт какого-нибудь проекта для компании. А где его взять? У меня были учебные проекты и они не плохи, но для оффера – “хотелось бы хоть один реальный проект”, как сказала мне одна эйчар. Есть варианты стажировок, но я не могу позволить себе терять в з/пл, да и берут туда в основном выпускников вузов. Кстати, если вы один из них – стажировки – это вообще бомба для вас и реальный шанс.
Так вот, для себя я выбрала путь – через аналитику. Сейчас я практикую Питон, SQL, возможно позже придумаю какой-нибудь DS проект для компании, и тогда буду дальше пробиваться на позиции data scientist. Есть еще вариант, что мне захочется углубиться в анализ (есть разные направления) и я отложу науку о данных. Все возможно.
Кстати, если вам нужна информация, что там твориться у дата сайентистов, то вот вам блог моего одногруппника. Блог про DS, там много нужного и полезного, ссылки, книги, кладезь всего! 🌟 https://t.me/ds1pro
Работаю я аналитиком данных, а училась на data scientist. Почему же я не пошла сразу в дата сайнтисты? Ответ прост – туда очень сложно пробиться и нужно много знать, а еще иметь уже готовый опыт какого-нибудь проекта для компании. А где его взять? У меня были учебные проекты и они не плохи, но для оффера – “хотелось бы хоть один реальный проект”, как сказала мне одна эйчар. Есть варианты стажировок, но я не могу позволить себе терять в з/пл, да и берут туда в основном выпускников вузов. Кстати, если вы один из них – стажировки – это вообще бомба для вас и реальный шанс.
Так вот, для себя я выбрала путь – через аналитику. Сейчас я практикую Питон, SQL, возможно позже придумаю какой-нибудь DS проект для компании, и тогда буду дальше пробиваться на позиции data scientist. Есть еще вариант, что мне захочется углубиться в анализ (есть разные направления) и я отложу науку о данных. Все возможно.
Кстати, если вам нужна информация, что там твориться у дата сайентистов, то вот вам блог моего одногруппника. Блог про DS, там много нужного и полезного, ссылки, книги, кладезь всего! 🌟 https://t.me/ds1pro
Telegram
DataSciencePRO
Все нужное и полезное из мира дата сатанистов)
👍25👏3🔥1
Наткнулась на бесплатный курс по визуализации данных в Нетологии. 🌟
Начался ВЧЕРА! С 7 ноября — 24 ноября. А почему бы и нет, что называется! 👍
https://netology.ru/programs/analyst-bifree?utm_source=ba_sa_analytics&utm_medium=influence&utm_campaign=bds_bifree_bou_tg_ba_sa_analytics&utm_content=2112022#/main
Стек: DataLens - без понятия что это, Excel, Power BI и Tableau.
Начался ВЧЕРА! С 7 ноября — 24 ноября. А почему бы и нет, что называется! 👍
https://netology.ru/programs/analyst-bifree?utm_source=ba_sa_analytics&utm_medium=influence&utm_campaign=bds_bifree_bou_tg_ba_sa_analytics&utm_content=2112022#/main
Стек: DataLens - без понятия что это, Excel, Power BI и Tableau.
🔥11👍4
Yandex DataLens 💡
Вот какой дашборд получилось создать в DataLens. Переходите по ссылке и потыкайте в фильтры. Красотища ведь!
Оказывается Yandex создал свой BI инструмент для визуализации данных. И все - бесплатно. Можно подключиться к базам или просто залить csv файл. На том бесплатном курсе (выше пост) была дана инструкция как сделать такую красоту.
Мне понравилось! Если кто не успел записаться тогда, то вот тут инструкция как создать подключение к базе и как сконструировать дашборд.
Вот какой дашборд получилось создать в DataLens. Переходите по ссылке и потыкайте в фильтры. Красотища ведь!
Оказывается Yandex создал свой BI инструмент для визуализации данных. И все - бесплатно. Можно подключиться к базам или просто залить csv файл. На том бесплатном курсе (выше пост) была дана инструкция как сделать такую красоту.
Мне понравилось! Если кто не успел записаться тогда, то вот тут инструкция как создать подключение к базе и как сконструировать дашборд.
👍28
Задания по Excel.
В каждом втором тестовом на аналитика есть задания по Excel. Так что тренируемся на чем можем. 💪
Сперва необходимо было построить сводную таблицу и создать условное форматирование. Если таблицу сделать не сложно, то вот с условным форматированием, как правило, все мало работают.
Я вот только на этой работе стала им пользоваться по просьбе отдела продаж для определенных отчетов.
Подскажу как я сделала форматирование тут. Сначала построим саму таблицу.
Задание по сводной таблице.
В файле с материалами занятия построить сводную таблицу, в которой отобразить статьи расходов по строкам, а регионы – по столбцам. В значениях нужны суммы расходов.
На картинке видно, что в строки мы поставили Статьи расходов, а в столбцы – Регионы. В значения перетащила суммы. Тут все просто.
Задание по условному форматированию.
Продолжение тут ->
В каждом втором тестовом на аналитика есть задания по Excel. Так что тренируемся на чем можем. 💪
Сперва необходимо было построить сводную таблицу и создать условное форматирование. Если таблицу сделать не сложно, то вот с условным форматированием, как правило, все мало работают.
Я вот только на этой работе стала им пользоваться по просьбе отдела продаж для определенных отчетов.
Подскажу как я сделала форматирование тут. Сначала построим саму таблицу.
Задание по сводной таблице.
В файле с материалами занятия построить сводную таблицу, в которой отобразить статьи расходов по строкам, а регионы – по столбцам. В значениях нужны суммы расходов.
На картинке видно, что в строки мы поставили Статьи расходов, а в столбцы – Регионы. В значения перетащила суммы. Тут все просто.
Задание по условному форматированию.
Продолжение тут ->
🔥11👍4❤1🥰1
🔥Дополнение к hh.ru
Смотрите какой сайт с вакансиями есть! Даже и не знала про него раньше. Тут подборки по странам, по позициям. Вот, что для младших аналитиков есть:
Младший аналитик / Отисифарм
https://careerspace.app/job/52601
Стажер бизнес-аналитик / ЭКОПСИ
https://careerspace.app/job/52641
Младший аналитик / ivi.ru
https://careerspace.app/job/52460
P.S. Не бойтесь отказов. Это нормально. Не упускайте возможность. Вдруг это ваше 🍀
Смотрите какой сайт с вакансиями есть! Даже и не знала про него раньше. Тут подборки по странам, по позициям. Вот, что для младших аналитиков есть:
Младший аналитик / Отисифарм
https://careerspace.app/job/52601
Стажер бизнес-аналитик / ЭКОПСИ
https://careerspace.app/job/52641
Младший аналитик / ivi.ru
https://careerspace.app/job/52460
P.S. Не бойтесь отказов. Это нормально. Не упускайте возможность. Вдруг это ваше 🍀
❤16👏5👍2
Учебный курс «Анализ данных»
Если вам не хватает к резюме каких-то свежих "корочек", то вот, что нашлось на любимом Степике:
Регистрируйтесь на курс до 1 декабря 2022 года и получите удостоверение о повышении квалификации государственного образца от Тюменского Государственного Университета!
https://stepik.org/course/126333/syllabus
Им нужно прислать скан диплома о первом высшем или о среднем профессиональном образовании.
Ну и курс пройти конечно. Пишут в отзывах, что базовый, легкий. По сути ознакомительный.
Мне даже интересно с какой целью Тюменский Университет такую акцию запустил? Может хочет потом базу потенциальных клиентов на уже платный большой курс собрать. А может что-то еще..
Если вам не хватает к резюме каких-то свежих "корочек", то вот, что нашлось на любимом Степике:
Регистрируйтесь на курс до 1 декабря 2022 года и получите удостоверение о повышении квалификации государственного образца от Тюменского Государственного Университета!
https://stepik.org/course/126333/syllabus
Им нужно прислать скан диплома о первом высшем или о среднем профессиональном образовании.
Ну и курс пройти конечно. Пишут в отзывах, что базовый, легкий. По сути ознакомительный.
Мне даже интересно с какой целью Тюменский Университет такую акцию запустил? Может хочет потом базу потенциальных клиентов на уже платный большой курс собрать. А может что-то еще..
👍14🔥1
🔥 Сводная таблица pivot_table().
Очень часто в работе используется эта функция из Pandas библиотеки. Она преобразовывает DataFrame в сводную таблицу. Хоть таблица и называется сводная, но она не сводит все ваши проблемы на “нет”. А вот задачи преобразования табличных данных решает на “ура”.
Разберемся как она работает на примере. Есть таблица с визитами на страницы. В ней есть дата захода на конкретную страницу, номер юзера, который зашел, сайт самой страницы и ее название.
| created_date | user | page | title
| 2022 – 11 – 01 | 3548329123|https://… | Как добавить счётчик Яндекс.Метрики на страницу
| 2022 – 11 – 02 | 3596921140|https://… | Новый редактор автовебинаров
💡 Задача – подсчитать кол-во заходов и кол-во уникальных юзеров (какое кол-во человек заходили на данную страницу)
df = df.pivot_table(
index = ['title','page'], # в строках будет сайт страницы и его название
columns = 'created_date' , # в колонках - дата захода (если дата не важна, то можно не прописывать)
values = 'user', # подсчитываем по юзерам
aggfunc=('count','nunique')) # как именно подсчитываем, тут считаем кол-во и уникальность.
В качестве aggfunc можно использовать в других задачах 'sum' если нужно подсчитать сумму, допустим выручки по клиентам.
В результате получим таблицу c такой структурой:
| title | page | count | nunique
| Как добавить ... |https://… | 22 | 17
| Новый редактор автовебинаров|https://… | 10 | 10
Очень часто в работе используется эта функция из Pandas библиотеки. Она преобразовывает DataFrame в сводную таблицу. Хоть таблица и называется сводная, но она не сводит все ваши проблемы на “нет”. А вот задачи преобразования табличных данных решает на “ура”.
Разберемся как она работает на примере. Есть таблица с визитами на страницы. В ней есть дата захода на конкретную страницу, номер юзера, который зашел, сайт самой страницы и ее название.
| created_date | user | page | title
| 2022 – 11 – 01 | 3548329123|https://… | Как добавить счётчик Яндекс.Метрики на страницу
| 2022 – 11 – 02 | 3596921140|https://… | Новый редактор автовебинаров
💡 Задача – подсчитать кол-во заходов и кол-во уникальных юзеров (какое кол-во человек заходили на данную страницу)
df = df.pivot_table(
index = ['title','page'], # в строках будет сайт страницы и его название
columns = 'created_date' , # в колонках - дата захода (если дата не важна, то можно не прописывать)
values = 'user', # подсчитываем по юзерам
aggfunc=('count','nunique')) # как именно подсчитываем, тут считаем кол-во и уникальность.
В качестве aggfunc можно использовать в других задачах 'sum' если нужно подсчитать сумму, допустим выручки по клиентам.
В результате получим таблицу c такой структурой:
| title | page | count | nunique
| Как добавить ... |https://… | 22 | 17
| Новый редактор автовебинаров|https://… | 10 | 10
👍17
✅ Сегодня вышел бесплатный курс по SQL у Карпова! Это офигеть событие в условиях, что качественное обучение, как правило платно. Еще и скачивать ничего не нужно.
Чему можно научиться:
- Составлять простые и продвинутые SQL-запросы к базам данных.
- Выгружать данные, анализировать их и визуализировать результаты.
- Проверять гипотезы и принимать решения на основе данных. (вот это очень хочу, практики в таком очень мало)
А на десерт будет раздел с продуктовыми задачами.
Там 60+ SQL-ЗАДАЧ! https://karpov.courses/simulator-sql
Чему можно научиться:
- Составлять простые и продвинутые SQL-запросы к базам данных.
- Выгружать данные, анализировать их и визуализировать результаты.
- Проверять гипотезы и принимать решения на основе данных. (вот это очень хочу, практики в таком очень мало)
А на десерт будет раздел с продуктовыми задачами.
Там 60+ SQL-ЗАДАЧ! https://karpov.courses/simulator-sql
karpov.courses
Симулятор SQL | karpov.courses
Запишитесь на бесплатный интерактивный симулятор SQL онлайн для практики: online-training в школе Karpov Courses.
👍34🔥19❤10💘1
🍀 Как мне помогла теория вероятности.
Прислали мне тут вот такую задачку – отобрать всех клиентов, у которых нет заявок на определенный доп.функционал или тех, у кого заявку одобрили, но клиент пока отключил у себя эту опцию. И еще у них среднемесячная выручка с начала 2022 года должна быть больше 800 тыс. руб.
Сначала я нашла тех, у кого больше 800 тыс.руб. в мес. - df_more_800
А вот потом в мозгу у меня все смешалось – что с чем соединить? 😜 И тут я составила табличку вероятностного пространства всех возможных вариантов, чтобы наглядно понять, как вытащить данные.
Получилась вот такая таблица:
| Есть заявка| Одобрена | Клиент включил опцию у себя |
| Есть заявка| Одобрена | Клиент НЕ включил опцию у себя |
| Есть заявка| НЕ одобрена| - |
| НЕТ заявки | - | - |
Сначала ищу клиентов, кто вообще подал заявку.
query = f"""
select account_id
from sales.request
where account_id in {tuple(df_more_800['account_id'])}
"""
df_request = pd.read_sql(query, connection)
Потом я нашла аккаунты тех клиентов, кто не включил опцию:
query = f"""
select account_id
from sales.request
where account_id in {tuple(df_more_800['account_id'])}
and status = 1 -- одобренность заявки
and active = 0 -- клиент отключил у себя
"""
df_off = pd.read_sql(query, connection)
Исключим с помощью isin те школы, кот подавали заявку, чтобы оставить тех, кто НЕ ПОДАВАЛ ЗАЯВКУ . Вот этот знак (~) оставляет в df_more_800 все, кроме тех аккаунтов, что указаны в df_request
df_wo_application = df_more_800[~df_more_800['account_id'].isin(tuple(df_request['account_id']))]
А теперь объединим с помощью concat тех, кто не подавал заявку и тех, кто выключил у себя эту опцию. Это и будет финалочка! 👌
df_final = pd.concat([df_wo_application, df_off], ignore_index = True)
Прислали мне тут вот такую задачку – отобрать всех клиентов, у которых нет заявок на определенный доп.функционал или тех, у кого заявку одобрили, но клиент пока отключил у себя эту опцию. И еще у них среднемесячная выручка с начала 2022 года должна быть больше 800 тыс. руб.
Сначала я нашла тех, у кого больше 800 тыс.руб. в мес. - df_more_800
А вот потом в мозгу у меня все смешалось – что с чем соединить? 😜 И тут я составила табличку вероятностного пространства всех возможных вариантов, чтобы наглядно понять, как вытащить данные.
Получилась вот такая таблица:
| Есть заявка| Одобрена | Клиент включил опцию у себя |
| Есть заявка| Одобрена | Клиент НЕ включил опцию у себя |
| Есть заявка| НЕ одобрена| - |
| НЕТ заявки | - | - |
Сначала ищу клиентов, кто вообще подал заявку.
query = f"""
select account_id
from sales.request
where account_id in {tuple(df_more_800['account_id'])}
"""
df_request = pd.read_sql(query, connection)
Потом я нашла аккаунты тех клиентов, кто не включил опцию:
query = f"""
select account_id
from sales.request
where account_id in {tuple(df_more_800['account_id'])}
and status = 1 -- одобренность заявки
and active = 0 -- клиент отключил у себя
"""
df_off = pd.read_sql(query, connection)
Исключим с помощью isin те школы, кот подавали заявку, чтобы оставить тех, кто НЕ ПОДАВАЛ ЗАЯВКУ . Вот этот знак (~) оставляет в df_more_800 все, кроме тех аккаунтов, что указаны в df_request
df_wo_application = df_more_800[~df_more_800['account_id'].isin(tuple(df_request['account_id']))]
А теперь объединим с помощью concat тех, кто не подавал заявку и тех, кто выключил у себя эту опцию. Это и будет финалочка! 👌
df_final = pd.concat([df_wo_application, df_off], ignore_index = True)
👍18
С наступающим! А кого-то уже с наступившим!🎄
Друзья, хочу пожелать, чтобы каждый в Новом Году получил заветный оффер, нашел направление, которое принесет радость, деньги и конечно удовлетворение!
Исполняйте мечты, будьте здоровы, полны энергии и верьте в свои силы! 🌟
А теперь моя маленькая история. Когда я получала отказы, то в какой-то момент, я решила не отсылать больше свое резюме, руки опускались, так как пробиться в IT очень трудно. Но я отчетливо помню, как в какой-то момент я задумалась, а какую работу я бы хотела получить, чтоб прям по сердцу. Все равно ведь есть та вакансия, которую мне предложит вселенная, которая будет именно моей. Я без уныния, с каким-то теплым чувством в душе мысленно представила условия вакансии, и чтобы я там делала, и не поверите, спустя небольшое количество времени именно такой оффер я и получила. Фантастика!
Продолжение -»
Друзья, хочу пожелать, чтобы каждый в Новом Году получил заветный оффер, нашел направление, которое принесет радость, деньги и конечно удовлетворение!
Исполняйте мечты, будьте здоровы, полны энергии и верьте в свои силы! 🌟
А теперь моя маленькая история. Когда я получала отказы, то в какой-то момент, я решила не отсылать больше свое резюме, руки опускались, так как пробиться в IT очень трудно. Но я отчетливо помню, как в какой-то момент я задумалась, а какую работу я бы хотела получить, чтоб прям по сердцу. Все равно ведь есть та вакансия, которую мне предложит вселенная, которая будет именно моей. Я без уныния, с каким-то теплым чувством в душе мысленно представила условия вакансии, и чтобы я там делала, и не поверите, спустя небольшое количество времени именно такой оффер я и получила. Фантастика!
Продолжение -»
👍31❤9👎1
Как ваш первый рабочий день? Я в запаре. Все отделы заказывают отчеты. Поэтому сегодня в блоге тема легкая. Мозг бережем. 😜
Когда я только создавала канал, я зарегистрировалась на https://tgstat.ru – это каталог Telegram – каналов и чатов и вот какую открытку я от них получила по итогу года. Вас уже так много! ❤️ Мне очень радостно, что мой труд идет кому-то на пользу в работе или учебе, а кого-то подпитывает вдохновеньем. 🎈
Давайте проведем небольшой опрос, чтобы лучше Вас узнать.
Когда я только создавала канал, я зарегистрировалась на https://tgstat.ru – это каталог Telegram – каналов и чатов и вот какую открытку я от них получила по итогу года. Вас уже так много! ❤️ Мне очень радостно, что мой труд идет кому-то на пользу в работе или учебе, а кого-то подпитывает вдохновеньем. 🎈
Давайте проведем небольшой опрос, чтобы лучше Вас узнать.
🔥17👍2
👍12
По результатам опроса у нас из 243 проголосовавших 143 человека используют в работе Excel и 100 человек – не используют. В любом случае он нужен, как правило, тем, кто будет устраиваться аналитиком и нужен тем, кто работает, но уже в качестве прокачки скиллов. Короче он нужен всегда! 😜😂
Поэтому иногда буду показывать какие-то эксельные хитрости. 👌
Иногда может потребоваться список всех файлов с какого-то вашего диска. Как их выгрузить в Excel? Подруга подсказала способ. Сейчас кратко его вам опишу. На картинке для удобства все видно.
Вбиваем в ячейку путь откуда смотрим файлы: C:\Пример\*.*
Потом идем в Формулы-> Диспетчер Имен (Ctrl+F3). Жмем Создать. Задаем имя. Я так и назвала “Файл”.
В Диапазоне прописываем =ФАЙЛЫ(Лист1!$A$1) - ссылка на ячейку, где путь прописан. Сохраняем, закрываем. В столбце в Excel пишем 1, 2 и т.д. Можно зажать ctrl и протянуть 1, автоматически получим столбец от 1 до сколько у вас примерно файлов.
Продолжение ->
Поэтому иногда буду показывать какие-то эксельные хитрости. 👌
Иногда может потребоваться список всех файлов с какого-то вашего диска. Как их выгрузить в Excel? Подруга подсказала способ. Сейчас кратко его вам опишу. На картинке для удобства все видно.
Вбиваем в ячейку путь откуда смотрим файлы: C:\Пример\*.*
Потом идем в Формулы-> Диспетчер Имен (Ctrl+F3). Жмем Создать. Задаем имя. Я так и назвала “Файл”.
В Диапазоне прописываем =ФАЙЛЫ(Лист1!$A$1) - ссылка на ячейку, где путь прописан. Сохраняем, закрываем. В столбце в Excel пишем 1, 2 и т.д. Можно зажать ctrl и протянуть 1, автоматически получим столбец от 1 до сколько у вас примерно файлов.
Продолжение ->
👍21
Отвал клиентов
У меня тут на днях попросили сделать статистику по отвалу клиентов по месяцам. Причем в строках должны быть месяцы первой покупки тарифа. Допустим, купили 766 компаний первый тариф в январе 2022 года. А через месяц из них 149 отвалились, значит 149 стоит в строке “2022-01” и в колонке “отвал через 1 месяц”.
Клиент сначала покупает тариф, потом может его менять. Тариф действует определенный период времени. Есть его первая дата покупки. Есть дата, до которой он действует. Если срок истек, значит клиент считается не актуальным, выбывшим. И вот какой алгоритм я придумала.
Тут видно лучше https://telegra.ph/Statistika-po-klientam-01-27
Я ищу sql запросом (датафрейм df_finish), все оплаты первых тарифов с января 2022 года. Получаю таблицу.
Продолжение ->
У меня тут на днях попросили сделать статистику по отвалу клиентов по месяцам. Причем в строках должны быть месяцы первой покупки тарифа. Допустим, купили 766 компаний первый тариф в январе 2022 года. А через месяц из них 149 отвалились, значит 149 стоит в строке “2022-01” и в колонке “отвал через 1 месяц”.
Клиент сначала покупает тариф, потом может его менять. Тариф действует определенный период времени. Есть его первая дата покупки. Есть дата, до которой он действует. Если срок истек, значит клиент считается не актуальным, выбывшим. И вот какой алгоритм я придумала.
Тут видно лучше https://telegra.ph/Statistika-po-klientam-01-27
Я ищу sql запросом (датафрейм df_finish), все оплаты первых тарифов с января 2022 года. Получаю таблицу.
Продолжение ->
👍28👏3
Хочется красиво..
Задача была следующая – вытащить три топ клиента за год в каждой нише. Сначала – sql запросом (с сортировкой order by 3 desc по уменьшению) сформировала выгрузку всех клиентов с оборотом и с указанием ниши. Получилась такая табличка (df):
номер клиента | ниша | сумма
А вот потом задумалась, а как мне взять топ три клиента из каждой ниши. Просто head мне же даст первые три школы из всех, они могут быть из одной ниши. Не подойдет.
Я сделала быстро и надежно
df1 = df[df['ниша'] == 'инфобизнес'].head(3)
df2 = df[df['ниша'] == 'астрология'].head(3)
И так по каждой нише, а потом concat просто их все соединила.
Позже "потыкавшись", поняла, что все-таки groupby срабатывает и даже справляется быстрее. Особенно когда много категорий, то задолбаешься их соединять.
df.groupby('ниша').head(3) выдает трех клиентов в каждой нише в порядке убывания сумм по клиенту. На картинке слева.
А еще крутой способ потом обнаружила с помощью lambda и nlargest:
Продолжение->
Задача была следующая – вытащить три топ клиента за год в каждой нише. Сначала – sql запросом (с сортировкой order by 3 desc по уменьшению) сформировала выгрузку всех клиентов с оборотом и с указанием ниши. Получилась такая табличка (df):
номер клиента | ниша | сумма
А вот потом задумалась, а как мне взять топ три клиента из каждой ниши. Просто head мне же даст первые три школы из всех, они могут быть из одной ниши. Не подойдет.
Я сделала быстро и надежно
df1 = df[df['ниша'] == 'инфобизнес'].head(3)
df2 = df[df['ниша'] == 'астрология'].head(3)
И так по каждой нише, а потом concat просто их все соединила.
Позже "потыкавшись", поняла, что все-таки groupby срабатывает и даже справляется быстрее. Особенно когда много категорий, то задолбаешься их соединять.
df.groupby('ниша').head(3) выдает трех клиентов в каждой нише в порядке убывания сумм по клиенту. На картинке слева.
А еще крутой способ потом обнаружила с помощью lambda и nlargest:
Продолжение->
👍22❤3🔥2
Для бизнес аналитиков канал подъехал, берите на пользу!
Канал с материалами про процессы, проекты и управление.
Статьи, книги, блоги, стандарты, конференции, эксперты и практические наработки.
На канале есть база знаний, которая формировалась около 3-х лет о процессах, проектах, изменениях и управлении:
Канал: https://t.me/timethod
База знаний (карта): https://miro.com/app/board/uXjVPMeMjGI=/
Владелец канала: https://t.me/timethod1
Развиваю его потому, что в какое-то время мне надоело то, что у нас происходит в стране с процессным управлением и культурой руководства.
Цель канала - распространять знания, инструменты, подходы, технологии области процессного управления для стабильного, прибыльного, сконцентрированного развития организаций нашей страны. Бесплатно. Доступно. Качественно. Без надувания экспертных щёк)
Приходите, всем будем очень рады!
Канал с материалами про процессы, проекты и управление.
Статьи, книги, блоги, стандарты, конференции, эксперты и практические наработки.
На канале есть база знаний, которая формировалась около 3-х лет о процессах, проектах, изменениях и управлении:
Канал: https://t.me/timethod
База знаний (карта): https://miro.com/app/board/uXjVPMeMjGI=/
Владелец канала: https://t.me/timethod1
Развиваю его потому, что в какое-то время мне надоело то, что у нас происходит в стране с процессным управлением и культурой руководства.
Цель канала - распространять знания, инструменты, подходы, технологии области процессного управления для стабильного, прибыльного, сконцентрированного развития организаций нашей страны. Бесплатно. Доступно. Качественно. Без надувания экспертных щёк)
Приходите, всем будем очень рады!
Telegram
Процессы BPM, проекты PM, архитектура предприятий EA, стратегия
ЧАТ - https://t.me/timethod2
Процессы, проекты, производство, архитектура, стратегия (EA; BA): шаблоны, статьи, книги, метод, практика, анализ рынка, опыт, эксперты, обзор выполненных проектов
#BPM #BPMS #BPMN #PM #LEAN #KANBAN
Процессы, проекты, производство, архитектура, стратегия (EA; BA): шаблоны, статьи, книги, метод, практика, анализ рынка, опыт, эксперты, обзор выполненных проектов
#BPM #BPMS #BPMN #PM #LEAN #KANBAN
👍9🔥3
Отвал клиентов сиквел
Помните задачку по отвалу клиентов? https://t.me/analysts_world/51
Так вот теперь есть продолжение к той задаче. На этот раз нужно собрать ту же статистику, но по отвалу клиентов, админы которых входят в несколько определенных групп. ✅
Каждый свод код оставляйте с комментариями, чтобы потом вспомнить, что вы делали и если нужно накрутить на него еще дополнительный скрипт 😜
Сначала мы опять смотрим клиентов, кто покупал тарифы. Опять ищем 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"})
Помните задачку по отвалу клиентов? https://t.me/analysts_world/51
Так вот теперь есть продолжение к той задаче. На этот раз нужно собрать ту же статистику, но по отвалу клиентов, админы которых входят в несколько определенных групп. ✅
Каждый свод код оставляйте с комментариями, чтобы потом вспомнить, что вы делали и если нужно накрутить на него еще дополнительный скрипт 😜
Сначала мы опять смотрим клиентов, кто покупал тарифы. Опять ищем 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"})
👍4🔥1
🎯 Еще один канал для всех кто увлекается аналитикой данных, data science, бизнес-анализом.
Forwarded from Аналитика данных / Data Study
Привет!
Готовлюсь к запуску 3-го потока курса "Бизнес-анализ в IT"
Старт обучения: 21 февраля
На курсы вы сможете:
✅ получить теорию и практику по сбору требований для разработки ПО
✅ научиться детализировать требования исходя из их типа (бизнес, пользовательские, функциональные, нефункциональные)
✅ познакомиться с тонкостями работы по Agile (Scrum, Kanban) и научиться работать с системами таск-трекинга и wiki для оформления требований
✅ получить готовые и отработанные шаблоны для оформления документации
✅ закрепить все полученные знания при решении бизнес-кейса по разработке системы и сбора требований
Больше информации о курсе, формате обучения, программы уроков вы можете найти на сайте https://datastudy.ru/2
P.S. На сайте указаны неправильные сроки старта обучения, до правок еще не добрался)))
По всем вопросам можете писать мне лично. Либо заполните форму предзаписи, я вам сам напишу 😉
Заполнить форму
Готовлюсь к запуску 3-го потока курса "Бизнес-анализ в IT"
Старт обучения: 21 февраля
На курсы вы сможете:
✅ получить теорию и практику по сбору требований для разработки ПО
✅ научиться детализировать требования исходя из их типа (бизнес, пользовательские, функциональные, нефункциональные)
✅ познакомиться с тонкостями работы по Agile (Scrum, Kanban) и научиться работать с системами таск-трекинга и wiki для оформления требований
✅ получить готовые и отработанные шаблоны для оформления документации
✅ закрепить все полученные знания при решении бизнес-кейса по разработке системы и сбора требований
Больше информации о курсе, формате обучения, программы уроков вы можете найти на сайте https://datastudy.ru/2
P.S. На сайте указаны неправильные сроки старта обучения, до правок еще не добрался)))
По всем вопросам можете писать мне лично. Либо заполните форму предзаписи, я вам сам напишу 😉
Заполнить форму
datastudy.ru
Бизнес-анализ в IT
❤3