如何在Pandas DataFrame中为重复的日期添加任意时间

时间:2019-06-13 13:27:05

标签: python pandas date timedelta

我需要向熊猫DataFrame中的重复日期添加任意数量的timedelta。

我有一个数据框,其中最多有两行,每个“ area”和“ date”值的日期相同。 还有另一列告诉我它是否对应于早上或晚上。 我想补充一点,比方说晚上行对应的日期是8个小时。

到目前为止,我已经设法在重复的日期中添加了一个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

0 个答案:

没有答案