НачатьНачать бесплатно

Давность пожертвований

Ещё одна полезная переменная для базовой таблицы — это давность, то есть время, прошедшее с последнего пожертвования. Вам даны два датафрейма: basetable и gifts. Они содержат базовую таблицу на начальном этапе и сведения о пожертвованиях доноров за всё время. Добавьте для каждого донора из выборки давность последнего пожертвования в днях.

Обратите внимание на временну́ю шкалу, которая используется для построения базовой таблицы:

Это упражнение является частью курса

Средний уровень прогностической аналитики на Python

Посмотреть курс

Инструкции к упражнению

  • Укажите референсную дату.
  • Создайте датафрейм gifts_before_reference, который содержит пожертвования, сделанные до референсной даты.
  • Создайте датафрейм last_gift, который содержит последнее пожертвование каждого донора из gifts_before_reference, и добавьте в него давность последнего пожертвования в днях.
  • Добавьте эту переменную давности в базовую таблицу.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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="____")
Редактировать и запускать код