Datalytics – Telegram
Datalytics
9.04K subscribers
219 photos
17 videos
5 files
674 links
Канал для аналитиков данных про Python, карьерное развитие в анализе данных, всякое разное

Автор – @ax_makarov

Отдельный канал про ChatGPT и его практическое применение —  @ai_forge

Чат канала — @pydata_chat

Вакансии — @data_hr
Download Telegram
RFM-анализ - один из методов сегментации клиентов. Если вы хотите заняться сегментацией клиентской базы, то вам поможет статья о том как делать RFM-анализ в Python, а также визуализировать полученные сегменты.

https://guillaume-martin.github.io/rfm-segmentation-with-python.html
Использовать Jupyter Notebook на удаленном сервере - крайне удобно. Во-первых, все ваши ноутбуки будут доступны с любого устройства, будь то рабочий или домашний компьютер. Во-вторых, не нужно оставлять свой личный компьютер включенным на выполнение длительных задач. Статья расскажет о том как запустить Jupyter Notebook в облаке.

https://towardsdatascience.com/running-jupyter-notebook-in-google-cloud-platform-in-15-min-61e16da34d52
Статья о том как трансформировать JSON с множественными уровнями вложенности для дальнейшей работы с данными в Pandas

https://hackersandslackers.com/json-into-pandas-dataframes/
Forwarded from Ivan Begtin (Ivan Begtin)
Git для данных - это давняя мечта многих разработчиков и дата-инженеров. Как организовать хранение и передачу данных так чтобы было похоже на систему контроля версий и учитывало объёмы и изменения в наборах данных.

Несколько проектов существуют для решения этой задачи, например такие:
- Dolt [1] [2] - умеет многое, объединять данные, сравнивать, делать таблицы сравнения, разрешать конфликты и тд. плюс многое из возможностей git'а
- Daff [3] позволяет работать с таблицами CSV и также сравнивать их, объединять и тд. Интегрирован с git
- DVC [4] система контроля версиями для проектов по машинному обучению. Довольно популярна и умеет многое связанное с проектами именно по ML


Ссылки:
[1] https://github.com/liquidata-inc/dolt
[2] https://www.dolthub.com/
[3] https://github.com/paulfitz/daff
[4] https://dvc.org/

#opendata #data #git #datatools
👍1
Pandas - отличная базовая библиотека для работы с данными, включая очистку, генерацию новых фич и интеграцию с инструментами машинного обучения. Проблема в том, что в ней, несмотря на кажущуюся простоту, есть разные тонкости, а также готовые обертки, которые могут сильно облегчить жизнь, если о них знать.

Николай Марков рассказывает о различных приёмах эффективной работы с данными. Настоятельно рекомендую к просмотру

https://www.youtube.com/watch?v=2xS_glCEuRg
Пожалуй, обращение к элементам датафрейма с помощью loc и iloc - это одна из тех тем, которая становится камнем преткновения для людей, начинающих изучать pandas. На самом деле, всё не так сложно. Erik Marsja в своей статье подробно освещает использование loc и iloc.

https://www.marsja.se/how-to-use-iloc-and-loc-for-indexing-and-slicing-pandas-dataframes/
Проверка гипотез с помощью статистических критериев ничего не сообщает о величине различия. В ходе теста устанавливается p-value, что говорит о уровне статистической значимости. А для того чтобы выяснить величину какого-то явления или уровень различия между величинами используют методы оценки величины эффекта (effect size). Величина эффекта может считаться по-разному в зависимости от типа гипотезы, которую мы проверяем. Мер для оценки величины эффекта очень много, чтобы в этом убедиться можно посмотреть статью на википедии. Например, для проверки гипотезы равенства двух средних можно использовать метрику d-Коэна. В статье представлен доступный разбор того что же такое effect size и несколько примеров его расчета с кодом.

https://machinelearningmastery.com/effect-size-measures-in-python/
👍1
WolframMathematica официально представили клиентскую библиотеку Wolfram для Python. Библиотека имеет полностью открытый исходный код.

Клиентская библиотека Wolfram позволяет легко интегрировать большую коллекцию алгоритмов языка Wolfram Language, а также базу знаний Wolfram непосредственно в любой уже существующий код Python.

В статье есть классный пример использования встроенного алгоритма обнаружения лиц в пару строчек кода.

https://habr.com/ru/company/wolfram/blog/471814/
Лёша Куличевский делится замечательными советами о том как стать аналитиком
Игорь спрашивает: «Как сформировать путь из маркетолога в аналитика? Какие навыки нужно приобрести?»

Вот алгоритм работы аналитика:

Всё начинается с того, что какой-то заказчик приходит с задачей. Обычно эта задача сформулирована в мире заказчика, например «разобраться, почему у нас не растут продажи» или «мы запустили новую фичу, хотим понять, работает ли она».

Задача аналитика: разобраться в задаче, декомпозировать ее на атомарные подзадачи, решение которых поможет ответить на основной вопрос.
Например «разобраться, почему у нас не растут продажи» можно разобрать так:
* В прошлом году выручка компании расла каждый месяц (дальше значения выручки)
* В этом году рост остановился на значении…
* Как компания зарабатывает деньги? Какие продукты продает? Кому?
* Как изменилось количество новых покупателей?
* Как изменилось количество вернувшихся покупателей?
* Как изменился средний чек?
* Как изменился состав покупательской корзины?
* Как изменились цены на товары?
* Как изменилась посещаемость сайта?

И так далее. Аналитику нужно выделить из задачи целевые метрики и разобраться, из чего они состоят. Я называю этот подход составлением «Пирамиды метрик». В консалтинге его называют составлением «Дерева KPI». Я когда-то описывал этот процесс в блоге: https://blog.ohmystats.com/printsip-piramidy-kak-planirovat-reklamnyie-aktivnosti/
После того, как аналитик декомпозировал задачу, надо где-то достать данные для ее решения.
Данные могут лежать, например, в какой-нибудь базе. Чтобы их оттуда достать, нужно уметь писать запросы на SQL.
Еще они могут лежать где-то в интернете и, чтобы их получить, нужно написать запрос к API или распарсить какой-то сайт. Для этого полезно уметь писать несложные программы на каком-нибудь языке программирования. Я, например, пишу на R ил Python.
Когда данные получены, их нужно проанализировать, чтобы найти ответ на вопрос. Если аналитик хорошо декомпозировал задачу на первом шаге, весь анализ представляет собой последовательность простых математических операций: тут сложить, там поделить.

Как компания зарабатывает деньги? Какие продукты продает? Кому?
— продаем холодильники через интернет по всей России

Как изменилось количество новых покупателей?
— снизилось на 30%

Почему? Как изменилась посещаемость сайта?
— осталась на том же уровне, зато снизилась конверсия из посетителей в покупателей

Почему она снизилась? На каком этапе воронки?
— Конверсия просела на этапе оформления заказа

Когда она снизилась? Что произошло в этот день?
— 5 января. Мы в этот день убрали бесплатную доставкую
Последний этап в пработе аналитика — объяснить результаты анализа заказчику.
Для этого нужно логично и понятно объяснить ваш ход мыслей и подкрепить их иллюстрациями. Иногда задача — не столько ответить на один вопрос, сколько создать для заказчика инструмент, с помощью которого он сам бы на него отвечал в будущем. Это может быть дешборд, модель или какой-нибудь еще дата-продукт.

Создавать такие дата-продукты удобно теми же R и Python.
Итого, хороший аналитик умеет:
1. Декомпозировать задачу
2. Находить, доставать и готовить нужные для ее решения данные
3. Анализировать эти данные
4. Понятно объяснять результаты анализа заказчику

Первый пункт — самый важный.
Кстати, подписывайтесь на канал Лёши Куличевского. Он в аналитике съел слона и плохого не посоветует.

https://news.1rj.ru/str/kulichevskiy
При работе с анализом непрерывных числовых данных может быть полезным разбить эти данные на диапазоны (иначе называемые корзинками или bins). В статье подробно рассказывается о том как разбить данные на диапазоны с помощью функций cut и qcut в pandas.

https://pbpython.com/pandas-qcut-cut.html
Статья из блога DataQuest о том как анализировать данные опросов с помощью Python. Полезно будет новичкам в качестве простого примера разведочного анализа данных

https://www.dataquest.io/blog/how-to-analyze-survey-data-python-beginner/
Forwarded from BigQuery Insights
​​Новый Python скрипт - позволяет извлекать данные об активности пользователя из Google Analytics и импортировать их в таблицу Google BigQuery.

via @BigQuery
Если вы в pandas используете apply на большом объеме данных, то может быть полезным прикрутить шкалу прогресса выполнения функции. В статье рассказывается о том как это сделать с применением библиотеки tqdm

https://towardsdatascience.com/progress-bars-in-python-and-pandas-f81954d33bae