Pandas.crosstab () на реальном примере
Задача получить CSV в котором будут сгруппированны данные по USER_ID и DATE_PAYMENT_MONTH, чтобы в результате понять какой пользователь нам платит каждый месяц, сколько пользователь портатил на услугу и далее с ними как-то прокоммуницировать.
Для решение задачи буду использовать Pandas.crosstab ()
Скачать можно здесь. Анонимный датасет из 3х колонок
- USER_ID — ИД пользователя
- DATE_PAYMENT_MONTH — месяц когда пользователь сделал оплату
- SUM — сумма заказа
Решение задачи.
1. Импортировать pandas и прочитать файл
import pandas as pd df = pd.read_csv('dataset.csv')
2. Воспользоваться Pandas.crosstab () для получения отчета:
pd.crosstab(df['USER_ID'], df['DATE_PAYMENT_MONTH'], df['SUM'], aggfunc='sum')
3. В итоге получается наглядная сводная таблица с данными. В качестве USER_ID можно использовать почту или телефон пользователя и группировать по ним, ну а далее перенести это например в Esputnik и отправить рассылку 🙂 В общем поле ограничего вашей фантазией
Если у вас есть вопросы — пишите в комментарии и обсудим.