Создайте базовую дату и используйте timedelta для увеличения количества дней на основе значения, которое у вас есть в столбце Date
:
from datetime import datetime, timedelta
def update_date(row):
return row.parsed_date + timedelta(days=row.Date)
df = pd.DataFrame({
'ID': [1 , 2 , 3 , 4 , 5],
'Sale': [4 , 2 , 10, 1 , 30],
'Date': [0, 0, 1, 1, 100],
})
df['parsed_date'] = datetime(2018, 8, 1, 0, 0)
df['parsed_date'] = df.apply(update_date, axis=1)
В результате:
ID Sale Date parsed_date
0 1 4 0 2018-08-01
1 2 2 0 2018-08-01
2 3 10 1 2018-08-02
3 4 1 1 2018-08-02
4 5 30 100 2018-11-09