我有一个 df,它有一个时间戳列,如下所示:
0:40:40
0:40:45
...
23:59:55
0:00:00
0:00:05
...
并且这样重复了很多天。如何将其转换为日期时间对象,并为每个新的一天分配不同的连续日期?目前,to_datetime
会将它们全部分配到同一天。
答案 0 :(得分:0)
在使用 to_datetime 制作 DATE 列之后:
df['New_date'] = df.apply(lambda row : row['DATE']+datetime.timedelta(days=row.name), axis=1)
注意:row.name 将索引号添加为一天
答案 1 :(得分:0)
df.timestamp = pd.to_datetime(df.timestamp)
days = 0
for i in range(2, size + 1):
if df.at[i - 1, 'timestamp'].hour > df.at[i, 'timestamp'].hour:
days += 1
df.at[i, 'timestamp'] += datetime.timedelta(days=days)