Образец скользящего окна из фрейма данных - PullRequest
0 голосов
/ 12 декабря 2018

Предположим, у меня есть фрейм данных из 20 строк (здесь столбцы не являются импами). Я хочу сгенерировать набор последовательных выборочных данных по 5 строк в каждом порядке:

1-5 наблюдения... 2-6 наблюдения .... 3-7 наблюдения и так далее до ... 16-20.

По сути, это будет (n + 1) -5 отдельных наборов данных.

Я думаю, что можно использовать функцию разделения, но не очень уверен в определении аргумента "f" в функции.

1 Ответ

0 голосов
/ 12 декабря 2018

Скажите, что ваш набор данных состоит из первых 20 строк iris:

df<-iris[1:20,]

Тогда вы можете попробовать:

nr <- nrow(df)
windowSize <- 5
lapply(seq_len(nr-windowSize+1), function(i) df[i:(i+windowSize-1),])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...