去年最大值
接下來,你想把捐款人在 2017 年、但在 2017 年 5 月 1 日之前的最大捐款金額加入到基礎表。你手邊已有幾個物件可用:basetable 包含母體中捐款人的 ID,gifts 包含捐款人在不同時間的捐贈紀錄。請對母體中的每位捐款人,將他在 2017 年的最大捐款金額加入到 basetable。
本練習屬於課程
Python 中級預測分析
練習說明
- 填入要取最大值之期間的開始與結束日期。
- 使用這個開始與結束日期,從資料框
gifts_2017中選出 2017 年的捐款。 - 建立一個 pandas 資料框,包含
gifts_2017中每位捐款人的最大捐款金額。 - 將這個最大金額加入
basetable。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Start and end date of the aggregation period
start_date = datetime.date(____, ____, ____)
end_date = datetime.date(____, ____, ____)
# Select gifts made in 2017
gifts_2017 = gifts[(gifts["____"] >= ____) & (gifts["____"] < ____)]
# Maximum gift per donor in 2017
gifts_2017_bydonor = gifts_2017.groupby(["____"])["____"].____().reset_index()
gifts_2017_bydonor.columns = ["donor_ID", "max_amount"]
# Add maximum amount to the basetable
basetable = pd.merge(____, ____)