Предположим, z - это наш зоопарк. Допустим, нам нужно 9 лагов для каждого из столбцов 2, 3, 4, а также для всех столбцов оригинала. Тогда попробуйте:
merge(z, lag(z[, 2:4], -(1:9)))
Также обратите внимание, что задержка 0 возвращает тот же столбец, так что это дает оригинал, а также 9 лагов каждого столбца:
lag(z, -(0:9))