Мне нужно добавить временную дельту произвольной суммы к дублированным датам в панде DataFrame.
У меня есть фрейм данных, где не более двух строк с одинаковой датой на значение «area» и «Дата".Есть еще одна колонка, в которой говорится, соответствует ли она утру или вечеру.Я хотел бы добавить, скажем, 8 часов к датам, соответствующим вечерним строкам.
До сих пор мне удавалось добавить timedelta к дублированным датам, но при этом не учитывается, если этоутро или вечер.Также, таким образом, я не могу добавить произвольную сумму timedelta.
Ввод df:
date day_time area value
0 2019-02-13 evening 1 21.0232
1 2019-02-13 evening 2 28.5190
2 2019-02-13 evening 3 33.0943
3 2019-02-13 evening 4 21.9933
4 2019-02-14 evening 1 20.1975
5 2019-02-14 evening 2 34.5405
6 2019-02-14 evening 3 33.9600
7 2019-02-14 evening 4 29.9888
8 2019-02-14 morning 1 13.2533
9 2019-02-14 morning 2 25.2858
10 2019-02-14 morning 3 26.6155
11 2019-02-14 morning 4 21.9388
time_delta = pd.to_timedelta(df.groupby(['date']).cumcount(), unit="h")
df['date'] = date['date'] + time_delta
Ожидаемый результат:
date day_time area value
0 2019-02-13 08:00:00 evening 1 21.0232
1 2019-02-13 08:00:00 evening 2 28.5190
2 2019-02-13 08:00:00 evening 3 33.0943
3 2019-02-13 08:00:00 evening 4 21.9933
4 2019-02-14 08:00:00 evening 1 20.1975
5 2019-02-14 08:00:00 evening 2 34.5405
6 2019-02-14 08:00:00 evening 3 33.9600
7 2019-02-14 08:00:00 evening 4 29.9888
8 2019-02-14 00:00:00 morning 1 13.2533
9 2019-02-14 00:00:00 morning 2 25.2858
10 2019-02-14 00:00:00 morning 3 26.6155
11 2019-02-14 00:00:00 morning 4 21.9388