import pandas as pd sales = pd.DataFrame( { "sold_at": [ "2026-06-17 08:15", "2026-06-17 11:40", "2026-06-18 09:05", "2026-06-18 13:10", "2026-06-18 18:30", "2026-06-19 10:20", ], "region": ["east", "east", "east", "west", "west", "west"], "revenue": [120, 95, 180, 245, 400, 160], } ) sales["sold_at"] = pd.to_datetime(sales["sold_at"]) daily = ( sales.resample("D", on="sold_at", label="left", closed="left") .agg(revenue=("revenue", "sum"), orders=("revenue", "size")) ) daily.index.name = "sales_day" print("Daily revenue buckets") print(daily.to_string()) print() print("index name:", daily.index.name) print("index frequency:", daily.index.freqstr) print("2026-06-18 revenue:", int(daily.loc["2026-06-18", "revenue"])) print("2026-06-18 orders:", int(daily.loc["2026-06-18", "orders"])) print("source revenue:", int(sales["revenue"].sum())) print("resampled revenue:", int(daily["revenue"].sum())) assert daily.index.freqstr == "D" assert int(daily.loc["2026-06-18", "revenue"]) == 825 assert int(daily.loc["2026-06-18", "orders"]) == 3 assert int(daily["revenue"].sum()) == int(sales["revenue"].sum()) print("verification: daily buckets match source revenue totals")