Обработчик Скользящее окно преобразует последовательность значений ряда в таблицу, где соседние записи представлены как соседние поля данных (окно – поскольку выделяется только некоторый непрерывный участок данных, скользящее – поскольку это окно «перемещается» по всему набору).
Потребность в такой таблице часто возникает при построении моделей, анализе и прогнозировании временных рядов, когда требуется подавать на вход модели значения нескольких смежных отсчетов из исходного набора данных.
Значения в одном из полей записи будут относиться к текущему отсчету, а в других – смещены от текущего отсчета «в будущее» или «в прошлое». Таким образом, преобразование скользящего окна имеет два параметра:
Есть история продаж за половину года по месяцам, представленная таблицей:
Первый день месяца | Объем продаж (тыс. руб.) |
---|---|
01.01.2014 | 1000 |
01.02.2014 | 1160 |
01.03.2014 | 1210 |
01.04.2014 | 1130 |
01.05.2014 | 1250 |
01.06.2014 | 1300 |
Для граничных (относительно начала и конца всей выборки) положений окна будут формироваться неполные записи, т.е. записи, содержащие пустые значения для отсутствующих прошлых или будущих отсчетов. Алгоритм преобразования позволяет исключить такие записи из выборки (тогда для нескольких граничных отсчетов записи формироваться не будут) либо включить их (тогда формируются записи для всех имеющихся отсчетов, но некоторые из них будут неполными).
Если задать глубину погружения 2 и горизонт прогнозирования 1, то получим следующую таблицу с неполными записями.
Первый день месяца | Объем продаж 2 месяца назад | Объем продаж месяц назад | Объем продаж в текущий месяц | Объем продаж на следующий месяц |
---|---|---|---|---|
1000 | ||||
01.01.2014 | 1000 | 1160 | ||
01.02.2014 | 1000 | 1160 | 1210 | |
01.03.2014 | 1000 | 1160 | 1210 | 1130 |
01.04.2014 | 1160 | 1210 | 1130 | 1250 |
01.05.2014 | 1210 | 1130 | 1250 | 1300 |
01.06.2014 | 1130 | 1250 | 1300 | |
1250 | 1300 | |||
1300 |
Или следующую таблицу с полными записями.
Первый день месяца | Объем продаж 2 месяца назад | Объем продаж месяц назад | Объем продаж в текущий месяц | Объем продаж на следующий месяц |
---|---|---|---|---|
01.03.2014 | 1000 | 1160 | 1210 | 1130 |
01.04.2014 | 1160 | 1210 | 1130 | 1250 |
01.05.2014 | 1210 | 1130 | 1250 | 1300 |