Bắt đầu ngayBắt đầu miễn phí

Độ mới của quyên góp

Một biến thú vị khác để thêm vào basetable là độ mới (recency), tức thời gian kể từ lần quyên góp gần nhất. Bạn được cung cấp hai dataframe basetablegifts, chứa basetable giai đoạn đầu và các khoản quyên góp của nhà tài trợ theo thời gian. Hãy thêm cho mỗi nhà tài trợ trong quần thể giá trị độ mới tính theo ngày.

Lưu ý mốc thời gian sau được dùng để tính basetable:

Bài tập này là một phần của khóa học

Phân tích dự đoán nâng cao với Python

Xem khóa học

Hướng dẫn bài tập

  • Điền ngày tham chiếu.
  • Tạo pandas dataframe gifts_before_reference chứa các khoản tặng trước ngày tham chiếu.
  • Tạo pandas dataframe last_gift sao cho với mỗi nhà tài trợ trong gifts_before_reference có khoản quyên góp gần nhất, và thêm độ mới (số ngày) vào last_gift.
  • Thêm độ mới này vào basetable.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Reference date to calculate the recency
reference_date = datetime.date(____, ____, ____)

# Select gifts made before the reference date
gifts_before_reference = gifts[(gifts["date"] < ____)]

# Latest gift per donor in 2017
last_gift = gifts_before_reference.groupby(["____"])["____"].____().reset_index()
last_gift["recency"] = ____ - ____["____"]   

# Add recency to the basetable
basetable = pd.merge(____, ____[["id", "recency"]], how="____")
Chỉnh sửa và Chạy Mã