Поговорим немного о прогнозировании. Но прежде, чем приступить, познакомимся с базовыми понятиями, в частности с понятием функции тренда.
Базовые понятия
Еще со школы все знакомы с линейной функцией, она как раз и лежит в основе тренда:
Y(t) = a0 + a1*t + E
Y
— это объем продаж, та переменная, которую мы будем объяснять временем и от которого она зависит, то есть Y(t)
;
t
— номер периода (порядковый номер месяца), который объясняет план продаж Y
;
a0
— это нулевой коэффициент регрессии, который показывает значение Y(t)
, при отсутствии влияния объясняющего фактора (t=0
);
a1
— коэффициент регрессии, который показывает, на сколько исследуемый показатель продаж Y
зависит от влияющего фактора t
;
E
— случайные возмущения, которые отражают влияния других неучтенных в модели факторов, кроме времени t
.
Наши данные
Допустим, что мы знаем объем продаж за прошедшие 9 месяцев. Вот, что из себя представляет наша табличка:
Нам необходимо спрогнозировать объем продаж на 10-й месяц.
Функция ПРЕДСКАЗ
Все манипуляции, которые будут описаны ниже, на самом деле можно сделать с помощью одной функции в Excel (она также есть в Google Sheets). Это функция ПРЕДСКАЗ
, которая с помощью линейной регрессии поможет найти новое значение на основании известных порядковых номеров периодов и объема продаж, распределенного во времени.
Первый аргумент функции — это номер прогнозируемого периода, далее — диапазон известного объема продаж и диапазон порядковых номеров этих периодов.
Прогнозное значение готово!
Построение модели
А теперь немного подробнее.
Попробуем построить уравнение линейной регрессии, которое скрывалось от нас в предыдущем пункте. Для этого мы должны определить коэффициенты a0
и a1
для прогнозирования объема продаж за 10-й месяц.
Определение коэффициентов модели
Строим график. По горизонтали видим отложенные месяцы, по вертикали объем продаж:
В Google Sheets выбираем «Редактор диаграмм > Дополнительные» и ставим галочку возле «Линии тренда». В настройках выбираем «Ярлык — Уравнение» и «Показать R^2».
Если ты делаешь все в MS Excel, то правой кнопкой мыши кликни на график и в выпадающем меню выбери «Добавить линию тренда».
По умолчанию строится линейная функция. Справа выбираем «Показывать уравнение на диаграмме» и «Величину достоверности аппроксимации R^2».
Вот, что получилось:
На графике мы видим уравнение функции:
y = 4856*x + 105104
Она описывает объем продаж в зависимости от номера месяца, на который мы хотим эти продажи спрогнозировать. Рядом видим коэффициент детерминации R^2
, который говорит о качестве модели и на сколько хорошо она описывает наши продажи (Y). Чем ближе к 1, тем лучше.
В нашем случае R^2 = 0,75
. Это средний показатель, он говорит о том, что в модели не учтены какие-то другие значимые факторы помимо времени t
, например, это может быть сезонность.
Прогнозируем
Чтобы рассчитать продажи за 10-й месяц, подставляем в функцию тренда «10» вместо x
. То есть,
y = 4856*10 + 105104
Получаем 153664 продажи в следующем месяце. Если добавим новую точку на график, то сразу видим, что R^2
улучшился.
Таким образом ты можешь спрогнозировать данные на несколько месяцев вперед, но без учета других факторов твой прогноз будет лежать на линии тренда и будет не таким информативным как хотелось бы. К тому же, долгосрочный прогноз, сделанный таким способом будет очень приблизительным.
Тем не менее это даст примерное представление о динамике прогнозируемых показателей и поможет отобразить их общее направление.
Ссылка на пример в Google Sheets.
Домашнее задание
Попробуй сделать прогноз на данных своего сайта.
P.S. И да, это был последний урок курса. Спасибо, что дошел до конца 😉