Przejdź do treści

Pandas. Klasa pd.Grouper(). Agregacja przychodu per tydzień kampanii Black Friday.

Na czym to polega w sklepie

Klasa pd.Grouper opakowuje kolumnę daty z parametrem freq (np. W, M, Q) do użycia w groupby. W raportach kampanii sezonowych zastępuje ręczne tworzenie kolumny week_start przed agregacją.

Przykład ze sklepu internetowego

Łączysz dzienny przychód z listopada i grudnia w tygodniowe sumy dla dashboardu kampanii:

import pandas as pd

daily = pd.read_csv("daily_revenue.csv", parse_dates=["date"])
daily = daily.set_index("date")

weekly = (
    daily.groupby(pd.Grouper(freq="W-MON"))["revenue"]
    .sum()
    .reset_index()
)
# każdy wiersz = tydzień kalendarzowy od poniedziałku

Co zrobić po stronie biznesu

  • Miesięczny ROAS wielu kanałów w jednym groupby z freq="M".
  • Porównanie tygodnia promocji vs ten sam tydzień rok wcześniej.
  • Agregacja eventów GA4 per godzina z freq="h" na indeksie datetime.

W skrócie

Grouper wymaga datetime index lub kolumny w groupby. Parametr freq musi pasować do osi czasu raportu - W-MON vs W-SUN.