Как получить данные о лидерах продаж за каждый день за месяц?
У меня есть таблица, которая выглядит как отчет о продажах на каждый день в течение месяца .
Здесь я хочу получить 2 лучших издателя за каждый день, у которого самая высокая сумма продаж в этот конкретный день.
2 ответа
Попробуйте использовать метод pandas .head():
result = data.groupby(['Period', 'Publisher_CID'])['Sales_Amount_(USD)'].sum().reset_index().sort_values('Sales_Amount_(USD)', ascending=False).groupby('Period').head(2)
если вы загрузите переменную
df
тогда
df.groupby(['Period', 'Publisher_CID']).agg({'Sale_Amount_(USD)':'sum'}).head(2)
должен дать вам правильный ответ.
Вы также можете группировать, используя имя издателя, но использование CID - лучший вариант. Также, если необходимы другие вычисления, просто сохраните их добавление в том же формате в
agg
Словарь.