8

是否可以根据其间隙拆分时间序列。例如,假设我们有以下内容:

rng2011 = pd.date_range('1/1/2011', periods=72, freq='H')
rng2012 = pd.date_range('1/1/2012', periods=72, freq='H')
Y = rng2011.union(rng2012)

是否可以寻找一年或更长时间的差距,并在其上拆分数据框?

我想这会是这样的:

Y.groupby(Y.map(lambda x: x.year))

除了这在年份日期拆分,我有兴趣指定间隔间隙而不是行的年份属性。

该应用程序是我从 gps 获得旅行日志,但没有描述一次旅行何时结束而另一次旅行何时开始。我想以十分钟或更长时间的间隔分开。

4

1 回答 1

13

假设 Y 是数据框中的一列,一种方法是使用diffcumsum

df = DataFrame(Y)
df[1] = df[0].diff() > 600000000000.0 #nanoseconds in ten minutes
df[1] = df[1].cumsum()
df.groupby(1)

注意:如果您使用 72 小时内的纳秒数,它将分为两组。

于 2012-12-20T17:42:15.037 回答