単純移動平均(MA)モデルをシミュレーションする
単純移動平均(MA)モデルは、ごく短期の自己相関を捉えるために用いられる、パラメータ数の少ない時系列モデルです。回帰のような形をとりますが、各観測値は実際には観測されない直前の撹乱項(イノベーション)に対して回帰されます。自己回帰(AR)モデルと同様に、MAモデルはホワイトノイズ(WN)モデルを特別な場合として含みます。
これまでのモデルと同様に、MAモデルは arima.sim() コマンドで model 引数を list(ma = theta)(theta は区間 (-1, 1) の傾きパラメータ)に設定してシミュレーションできます。加えて、n 引数で系列の長さも指定する必要があります。
この演習では、傾きパラメータが 0.5、0.9、-0.5 の3つのMAモデルをそれぞれシミュレーションしてプロットします。
この演習はコースの一部です
Rで学ぶ時系列分析
演習の手順
arima.sim()を使い、傾きパラメータを 0.5、系列長を 100 に設定したMAモデルをシミュレーションし、xに保存します。- 別の
arima.sim()呼び出しで、傾きパラメータを 0.9 にしたMAモデルをシミュレーションし、yに保存します。 - 3つ目の
arima.sim()呼び出しで、傾きパラメータを -0.5 にしたMAモデルをシミュレーションし、zに保存します。 plot.ts()を使って、3つのモデルをすべて表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Generate MA model with slope 0.5
x <- arima.sim(model = ___, n = ___)
# Generate MA model with slope 0.9
y <-
# Generate MA model with slope -0.5
z <-
# Plot all three models together
plot.ts(cbind(___, ___, ___))