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)

1年以上のギャップを探して、それらのデータフレームを分割することは可能ですか?

私はこれが次のようになると思います:

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

これが年の日付で分割されることを除いて、行の年属性ではなく間隔ギャップを指定することに興味があります。

アプリケーションは、GPSから旅行ログを取得していますが、ある旅行がいつ終了し、別の旅行がいつ開始したかについての説明はありません。10分以上のギャップで分割したいのですが。

4

1 に答える 1

13

Y がデータフレームの列であると仮定すると、1 つの方法はcumsumdiffを使用することです。

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

注: 72 時間のナノ秒数を使用すると、2 つのグループに分割されます。

于 2012-12-20T17:42:15.037 に答える