Максимальная сумма за прошлый год
Теперь вам нужно добавить в базовую таблицу максимальную сумму, которую донор пожертвовал в 2017 году, но до 1 мая 2017 года. В вашем распоряжении есть несколько объектов: basetable содержит идентификаторы доноров из генеральной совокупности, а gifts — список пожертвований, сделанных донорами за определённый период. Для каждого донора из генеральной совокупности добавьте в basetable максимальную сумму его пожертвований за 2017 год.
Это упражнение является частью курса
Средний уровень прогностической аналитики на Python
Инструкции к упражнению
- Укажите начальную и конечную даты периода, за который нужно найти максимум.
- Выберите пожертвования за 2017 год с помощью этих дат в датафрейме
gifts_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(____, ____)