我有一个形状为22341x3的数据框:
tID DateTime
0 1 2020-04-04 10:15:40
1 2 2020-04-04 10:15:56
2 2 2020-04-04 11:07:11
3 3 2020-04-04 11:08:14
4 3 2020-04-04 11:18:46
5 4 2020-04-04 11:23:56
6 5 2020-04-04 11:24:14
7 6 2020-04-04 11:29:12
8 7 2020-04-04 11:29:23
9 8 2020-04-04 11:34:23
现在,我必须创建一个名为merged_timestamp
的列,该列将相隔仅几秒钟的所有时间戳合并,并为它们提供一个新的数字:mtID
因此,例如:如果我们将2020-04-04 10:15:40
作为参考,相隔几秒钟的时间戳可以从40
秒到44
秒。与参考相比,它们的小时和分钟可能会有很大的差距,但是它们的秒数应该只有几秒钟的间隔才能合并。
任何帮助将不胜感激。
编辑:我尝试做dfd.resample('5s')[0:5]
,其中dfd是我的数据帧。它给了我这个错误TypeError: Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'RangeIndex'
答案 0 :(得分:1)
重新采样适用于索引,因此将日期时间设为索引;
df.index = pd.to_datetime(df['DateTime'])
然后您可以重新采样;
df.resample('5s').count()
或其他聚合,不确定您要执行的操作。然后,您可以删除不感兴趣的行。