シミュレーションデータでのARIMA予測
ARIMAモデルの当てはめに慣れてきたら、そのスキルを予測に活用します。まずはシミュレーションデータで練習しましょう。
ARパラメータが0.9の ARIMA(1,1,0) モデルから120個の観測を生成しました。データ全体は y、最初の100個の観測は x に入っています。これらの観測値はすでにプロット済みです。ここでは x に対して ARIMA(1,1,0) を当てはめ、モデル適合が妥当かを確認します。次に、astsa の sarima.for() を用いて20期先まで予測し、その予測を y の実際の値と比較します。
予測の基本構文は sarima.for(data, n.ahead, p, d, q) です。ここで n.ahead は予測ホライズンを表す正の整数です。予測値とその標準誤差が表示され、元データは黒、予測は赤、さらに2倍の平均二乗予測誤差に基づく予測区間が青の破線で描画されます。
astsa パッケージはすでに読み込まれており、データ(x)と階差をとったデータ(diff(x))はプロット済みです。
この演習はコースの一部です
Rで学ぶARIMAモデル
演習の手順
- 階差をとったデータのサンプルACFとPACFをプロットして、モデルの当たりをつけます。
sarima()を使ってxに ARIMA(1,1,0) を当てはめます。sarima()の出力を確認して、適合度とモデル診断を評価します。sarima.for()を使って20期先まで予測します。予測と実測値を比較してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Plot P/ACF pair of differenced data
# Fit model - check t-table and diagnostics
# Forecast the data 20 time periods ahead
sarima.for(x, n.ahead = ___, p = ___, d = ___, q = ___)
lines(y)