始める無料で始める

広告費を考慮した売上予測

コースの最終章へようこそ!

auto.arima() 関数は、ARIMA 誤差をもつ動的回帰モデルを当てはめます。これまでと異なる点は、回帰変数の行列を含む xreg 引数を使うことだけです。以下は動画で紹介したコード例です。

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

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

ここでは、データとして uschangeConsumption 列を、回帰変数として Income 列を指定しています。さらに、この場合の rep() 関数は、行列引数 xreg に対して値 0.8 をちょうど 8 回繰り返します。

この演習では、回帰の誤差に自己相関がある場合を考慮して ARMA 誤差を含めつつ、広告費に対して回帰した売上データをモデル化します。データはワークスペースの advert にあり、自動車部品会社の 24 か月分の売上と広告費で構成されています。プロットは売上と広告費の関係を示しています。

これまで学んだ内容を思い出しつつ、コンソールで advert データを確認し、指示をよく読んで、このチャレンジングな演習に取り組んでください。

この演習はコースの一部です

Rで学ぶ予測入門

コースを見る

演習の手順

  • advert のデータをプロットしてください。変数のスケールが異なるので、facets = TRUE を使います。
  • auto.arima() の第1引数を "sales" 列、第2引数 xreg"advert" 列、第3引数 stationaryTRUE に設定して、advert に対して ARIMA 誤差つき回帰を当てはめてください。
  • 当てはめたモデルが AR(1) 誤差をもつ回帰であることを確認してください。広告が 1 単位増えるごとの売上の増加はいくらですか?この係数は coefficients() の出力の 3 番目の要素です。
  • 次の 6 か月の広告費を毎月 10 単位として指定し、当てはめたモデルから予測して fc に保存してください。10 を 6 回繰り返すには、上の例と同様に xreg の中で rep() 関数を使います。
  • 予測値 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(___)
コードを編集して実行