R Как применить функцию к каждой строке, включая n следующих строк

Потребовалось мне применить функцию к каждой строке data.frame, включая n следующих строк. В голове крутилось apply, sapply, lapply... Не понимал как получить номер текущей строки в функции apply, чтобы относительно её зацепить в расчет следующие за ней строки.
По всем законам гениальности решение оказалось очень простым. Надо выполнить apply не по исследуемому data.frame, а по индексу строки и использовать этот индекс в применяемой функции для получения нужных строк data.frame. Например так:

sapply(1:nrow(df), function(i) sum(df[i:(i+n),]))

Комментарии

Популярные сообщения из этого блога

R Установка библиотеки rusquant

Структура базы данных (файловой версии)

Настройка ASP.NET 2.0 в IIS