НачатьНачать бесплатно

Прогнозирование продаж с учётом расходов на рекламу

Добро пожаловать в последнюю главу курса!

Функция auto.arima() позволяет подобрать модель динамической регрессии с ошибками ARIMA. По сравнению с предыдущим использованием изменение только одно: теперь вы будете передавать аргумент xreg с матрицей регрессионных переменных. Вот примеры кода из видео:

> fit <- auto.arima(uschange[, "Consumption"],
                    xreg = uschange[, "Income"])

> # rep(x, times)
> fcast <- forecast(fit, xreg = rep(0.8, 8))

Здесь данные задаются столбцом Consumption набора uschange, а регрессионная переменная — столбцом Income. Функция rep() в данном случае повторяет значение 0,8 ровно восемь раз для матричного аргумента xreg.

В этом упражнении вы построите модель продаж в зависимости от расходов на рекламу, добавив ошибку ARMA для учёта автокорреляции в остатках регрессии. В вашем рабочем пространстве доступен набор данных advert, содержащий 24 месяца данных о продажах и рекламных расходах компании по продаже автозапчастей. На графике показана зависимость продаж от рекламных расходов.

Вспомните всё, что вы изучили в этом курсе, изучите данные advert в консоли и внимательно прочитайте каждую инструкцию, чтобы справиться с этим непростым упражнением.

Это упражнение является частью курса

Прогнозирование в R

Посмотреть курс

Инструкции к упражнению

  • Постройте график данных из advert. Поскольку переменные имеют разные шкалы, используйте facets = TRUE.
  • Подберите регрессию с ошибками ARIMA для advert: в качестве первого аргумента auto.arima() укажите столбец "sales", второго аргумента xreg — столбец "advert", третьего аргумента stationary — значение TRUE.
  • Убедитесь, что подобранная модель является регрессией с ошибками AR(1). Каков прирост продаж при увеличении рекламных расходов на одну единицу? Этот коэффициент является третьим элементом в выводе функции coefficients().
  • Постройте прогноз на основе подобранной модели, задав расходы на рекламу на следующие 6 месяцев по 10 единиц в месяц, и сохраните результат в fc. Чтобы повторить значение 10 шесть раз, используйте функцию rep() внутри xreg, как в примере кода выше.
  • Постройте график прогнозов fc и дополните предложенный код: добавьте подпись оси x "Month" и подпись оси y "Sales".

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Time plot of both variables
autoplot(___, ___)

# Fit ARIMA model
fit <- auto.arima(___[, ___], xreg = ___[, ___], stationary = ___)

# Check model. Increase in sales for each unit increase in advertising
salesincrease <- ___(___)[___]

# Forecast fit as fc
fc <- forecast(___, xreg = ___)

# Plot fc with x and y labels
autoplot(___) + xlab(___) + ylab(___)
Редактировать и запускать код