R: создать кадр данных из скользящего окна

Допустим, у меня есть фрейм данных со следующей структурой:

DF <- data.frame(x = 0:4, y = 5:9)
> DF
  x y
1 0 5
2 1 6
3 2 7
4 3 8
5 4 9

каков наиболее эффективный способ превратить «DF» в фрейм данных со следующей структурой:

w x y
1 0 5
1 1 6
2 1 6
2 2 7
3 2 7
3 3 8
4 3 8
4 4 9

Где w - окно длиной 2, проходящее через фрейм данных 'DF'. Длина окна должна быть произвольной, то есть длина 3 дает

w x y
1 0 5
1 1 6
1 2 7
2 1 6
2 2 7
2 3 8
3 2 7
3 3 8
3 4 9

Я немного озадачен этой проблемой, потому что фрейм данных также может содержать произвольное количество столбцов, то есть w, x, y, z и т. Д.

/ edit 2: Я понял, что редактирование 1 немного неразумно, поскольку xts, похоже, не имеет дело с несколькими наблюдениями на точку данных

6
задан Matthew Lundberg 28 October 2014 в 01:41
поделиться