resample is groupby for time. It needs dates in the index (a DatetimeIndex) or a date column named with on=:
lake["revenue"].resample("W").sum() # weeks ending Sunday
daily.resample("ME", on="date")["revenue"].sum()
Common codes: "D" day, "W" week (ending Sunday), "ME" month end, "MS" month start, "QE" quarter end, "YE" year end. pandas 3 removed the old "M", "Q" and "Y", so older tutorials that use them now raise an error.
Resampling fills every period between the first and last date, even with no rows: an empty week sums to 0. That makes it the tool for missing days: series.asfreq("D", fill_value=0) turns a series with gaps into one row per calendar day.
For several groups, group first: daily.groupby("store").resample("ME", on="date")["revenue"].sum().