Предположим, у меня есть следующие данные временного ряда: source
+-----------+---+
| Date | A |
+-----------+---+
| 31-Dec-15 | 1 |
| 31-Dec-16 | 2 |
| 31-Dec-17 | 3 |
| 31-Dec-18 | 4 |
| 31-Dec-19 | 5 |
+-----------+---+
Я выполняю следующий скользящий расчет для source
с N = 2
и N = 3
. Код R:
for(i in (nrow(source)-(N-1)):1){A[i] <- sum(source$A[i:(i+(N-1))])}
output = data.frame(A)
print(output)
Как мне интегрировать индекс даты в приведенный выше код, чтобы на выходе
N=2
получалось
+-----------+---+
| Date | A |
+-----------+---+
| 31-Dec-16 | 3 |
| 31-Dec-17 | 5 |
| 31-Dec-18 | 7 |
| 31-Dec-19 | 9 |
+-----------+---+
N=3
выводит
+-----------+----+
| Date | A |
+-----------+----+
| 31-Dec-17 | 6 |
| 31-Dec-18 | 9 |
| 31-Dec-19 | 12 |
+-----------+----+
Мой текущий код выводит только столбец A
без столбца Date
. И мне нужно вручную добавить столбец Date
после печати output
. Мои фактические данные временного ряда намного длиннее этого, а скользящие вычисления более сложны, поэтому это упрощенный пример.