Скажем, у меня есть временной ряд Pandas с нерегулярными интервалами.
2010-01-04 88.82
2010-11-29 90.70
2010-12-01 90.09
2011-02-26 90.10
2011-08-01 90.55
2011-09-21 89.50
2012-04-01 89.06
2012-04-30 90.22
2012-05-03 90.21
Я хотел бы создать из индекса другую временную серию, в которой столбец заполняется последней датой года. Таким образом, для дат 2010 г. будет отображаться 2010-12-01, а для дат 2011 г. - 21-09-2011 и т. д. Желаемый результат:
2010-01-04 2010-12-01
2010-11-29 2010-12-01
2010-12-01 2010-12-01
2011-02-26 2011-09-21
2011-08-01 2011-09-21
2011-09-21 2011-09-21
2012-04-01 2012-05-03
2012-04-30 2012-05-03
2012-05-03 2012-05-03
Я могу извлечь индекс и сгруппировать их по годам.
end_dates=[]
df_idx = df.index
year_df = df_idx.groupby(df_idx.year)
for yr in year_df.keys():
end_dates.append(max(year_df[yr]))
Это дает мне список годовых дат окончания. Но как связать эти конечные даты с исходным индексом, чтобы получить желаемый результат?