如何合并相隔仅几秒钟的时间戳[熊猫]

时间:2020-05-16 15:29:06

标签: python-3.x pandas

我有一个形状为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'

1 个答案:

答案 0 :(得分:1)

重新采样适用于索引,因此将日期时间设为索引;

df.index = pd.to_datetime(df['DateTime'])

然后您可以重新采样;

df.resample('5s').count()

或其他聚合,不确定您要执行的操作。然后,您可以删除不感兴趣的行。