2017-09-29 19 views
1

私は不規則にサンプリングされた時系列を持っています。私は、連続したエントリ間の時間差が(例えば)1週間であるセグメントに分割したいと思います。たとえば:時系列データを1週間のセグメントに分割する

day  X 
1  4 
3  2 
7  4 
8  9 
10  2 
12  4 
14  3 
15  9 
17  7 
19  3 
26  9 

がに分割することになります。

day  X 
1  4 
8  9 
15  9 

day  X 
3  2 
10  2 
17  7 

day  X 
12  4 
19  3 
26  9 

day  X 
7  4 
14  3 

私はループでそれをブルートフォースすることができます想像しますが、これはかなり一般的な作業のように思えるので、私はより良い方法があると確信しています。 ボーナスポイント - 「週」ではなく、「6週間から8日間」の範囲の日数を使用します。

答えて

2

我々はdata.frame

split(df, df$day%%7) 
#$`0` 
# day X 
#3 7 4 
#7 14 3 

#$`1` 
# day X 
#1 1 4 
#4 8 9 
#8 15 9 

#$`3` 
# day X 
#2 3 2 
#5 10 2 
#9 17 7 

#$`5` 
# day X 
#6 12 4 
#10 19 3 
#11 26 9 
+0

感謝のlistを返すためにsplitを使用することができます!どのように "ボーナスポイント"の部分を行う上で任意のアイデア? –

関連する問題