АНАЛИТИКА ПЛЮС
Профессиональные услуги в сфере BI

Alteryx и Tableau: построение прогноза продаж



С помощью Tableau возможно спрогнозировать продажи на 3 месяца вперед с детализацией по месяцам. Да, без Alteryx не обойтись — но: вот оно, self-service BI в действии.

Ниже — подробная инструкция по созданию «прогнозного» workflow в Alteryx. По времени — вы потратите не более 1 часа.

И потом: всего за 1 клик вы сможете запустить workflow, выгрузить данные — куда удобно (в Excel, в базу данных, экстракт для Tableau Server)!

Итак:
Исходные данные: транзакционная таблица с данными о продажах.
Задача: построить прогноз продаж на 3 месяца вперед.

В данном решении используется уже готовый поток работ Alteryx, в котором исходные данные выведены в ноде Select. Для того, чтобы ноды, расположенные до ноды Select, и сама нода Select не выполнялись каждый раз, мы воспользуемся опцией Cache and Run Workflow (появилась в Alteryx Designer в версии 2018.3).

— Нажмем правой кнопкой мыши на ноду Select и выберем соответствующую опцию в контекстном меню.

— В итоге наш workflow выполнится и нода Select будет помещена в пузырь, информирующий нас об использовании кэша.

— Для прогнозирования в Alteryx Designer нам необходимо трансформировать нашу транзакционную таблицу во временной ряд (Time Series).Временной ряд – это совокупность значений какого-либо показателя за несколько последовательных моментов или периодов времени. В нашем случае для повышения качества прогноза мы преобразуем данные к следующему формату: в каждой строке в первом столбце будет записано первое число месяца, в котором были продажи, а во втором — сумма продаж за этот месяц.Для этого преобразуем столбец с датами продаж. В данном примере он называется Order Date. Нам необходимо «обрезать» информацию о дате продажи до месяца (в днях указать «01»). Воспользуемся нодой Formula.

— В Output Column выберем Order Date, в качестве выражения запишем DateTimeTrim([Order Date], «month»).

— Далее необходимо просуммировать продажи по месяцам. Воспользуемся нодой Summarize.

— В настройках ноды выберем поле Order Date c типом агрегации GroupBy, а поле Sales — c Sum.

— После выполнения workflow на выходе мы получим следующую таблицу с данными:

— На первый взгляд это и есть временной ряд, но если у нас не будет продаж в одном из месяцев, то строки с этим месяцем и значением 0 в поле Sales не будет. Для этого заполним пробелы в данных с помощью ноды TS Filler.

— Применим следующие настройки к данной ноде:

— Запустим workflow. На выходе у нас появятся дополнительные столбцы.

— Избавимся от столбцов OriginalDateTime и FlagGeneratedRow припомощи ноды Select.

— В настройках ноды снимем галочки напротив ненужных столбцов.

— Если в наших данных имеются пропущенные строки, то нода TS Filler их добавила, но в поле Sales у этих строк будет указано null вместо 0. Исправим это при помощи ноды Data Cleansing.

— Для этого в настройках ноды снимем галочку напротив поля Order Date.

— На выходе из этой ноды мы получим наш временной ряд.

— Для построения прогноза мы воспользуемся нодой ETS.

— В настройках ноды во вкладке Required parameters переименуем модель в Sales Forecast, в блоке Target field frequency укажем Monthly.

— Перейдем во вкладку Other options. В поле The number of periods to include in the forecast plot укажем 3, так как нам необходимо построить прогноз на 3 месяца.

— Нажмем правой кнопкой мыши на ноду ETS и выберем пункт Add All Browses в контекстном меню.

— К каждому из выходов ноды ETS добавились ноды для просмотра.

— Запустим workflow. Откроем нижнюю ноду Browse. Подождем пока отрендерится отчет. В отчете мы можем увидеть декомпозицию временного ряда (observed) на несколько компонент (level и season). В компоненте season визуализирован сезонные колебания продаж, в компоненте level — общий тренд.

— Если прокрутить отчет вниз, то можно найти интерактивный график. Фактические продажи отмечены на нем серым цветом, прогнозные значения — синим, доверительный интервал 95% — пунктирной синей линией, а доверительный интервал 80% — закрашенной полупрозрачной областью синего цвета. При наведении на конкретную точку на графике в правом верхнем углу отображаются значения показателей.

— Если нам просто необходимо узнать прогнозные значения, то на этом шаге можно остановиться, но если мы хотим получить данные, на основе которых построен график, нам необходимо воспользоваться нодой TS Forecast.

— Добавим эту ноду, присоединив входной порт к порту O ноды ETS, и ноды Browse ко всем выходам. В настройках ноды можем переименовать итоговое поле. В поле The number of periods to include in the forecast plot укажем 3, так как нам необходимо построить прогноз на 3 месяца.

— Запустим workflow.

— Наш прогноз успешно построен. Теперь мы можем очистить кэш, так как построение workflow завершено. Нажимаем правой кнопкой мыши по ноде Select с пузырём и в контекстном меню выбираем пункт Clear Cache.

Автор — Артем Шевченко, Tableau эксперт

Хотите узнать, как провести анализ и сделать отчеты быстро?

 

Нам доверяют: 

 

x

Этот сайт использует файлы cookies, чтобы облегчить вам пользование нашим веб-сайтом.

Продолжая использовать этот веб-сайт, вы даете согласие на использование файлов cookies.