1. 学ぶ
  2. /
  3. コース
  4. /
  5. Rで学ぶ予測入門

Connected

演習

tsCV() を使った時系列のクロスバリデーション

tsCV() 関数は、時系列のクロスバリデーション誤差を計算します。時系列データ、予測メソッド、予測ホライゾンを指定する必要があります。動画で使った例は次のとおりです。

> e = tsCV(oil, forecastfunction = naive, h = 1)

ここでは、tsCV() を使って goog データに naive() メソッドを適用し、最大 8 ステップ先までの MSE を計算してプロットします。演習では ggplot2 のグラフィックスを使いますが、必要なコードは十分に用意してあるので、残りを補っていただければ大丈夫です。

講義の tsCV() に関するスライドを必ず参照してください。goog データはワークスペースに読み込まれています。

指示

100 XP
  • goog データを使い、naive() 関数で予測して、最大 8 ステップ先までのクロスバリデーション誤差を計算し、e に代入します。
  • 各予測ホライゾンの MSE を計算し、e の欠損値は第 2 引数で除去します。MSE を計算する式は用意してあります。
  • 得られた MSE 値(y)を予測ホライゾン(x)に対してプロットします。関数に関する知識を思い出してください。もし関数の引数リストに MSE = mse があるなら、mse は関数の「外」にあるワークスペース内のオブジェクトを指し、MSE は関数「内」でそのオブジェクトを参照するための変数名です。