В pandas
имеется множество встроенных функций даты и времени.Получить то, что вам нужно, просто, используя offsets
.Сначала вы должны передать свою дату в правильном формате на pd.to_datetime
:
df['Date2'] = pd.to_datetime(df['Date'], format='%Y%m') + pd.offsets.BMonthEnd(1)
>>> df
Product Date Country Date2
0 A 200801 USA 2008-01-31
1 C 201503 AUS 2015-03-31
2 B 201002 UK 2010-02-26
3 B 201704 FIN 2017-04-28
4 C 200605 IRE 2006-05-31
5 A 200805 CAN 2008-05-30