3

以下のモデルを時系列データに適合させました。はxreg、1 から 1000 までの時間ベクトルと、月を表す 12 個の標識変数 (1 または 0) で構成されます。私が扱っているデータには、毎週および毎月の強い季節パターンがあります。

fit <- arima(x, order = c(3, 0, 0),
    seasonal = list(order = c(1, 0, 1), period = 7),   
    xreg = cbind(t, M1, M2, M3, M4, M5,
    M6, M7, M8, M9, M10, M11, M12), include.mean = FALSE,
    transform.pars = TRUE,
    fixed = NULL, init = NULL,
        method = c("CSS-ML", "ML", "CSS"),
        optim.method = "BFGS",
        optim.control = list(), kappa = 1e6)

現時点では、1 月 ( M1=1) の 14 の値を予測する方法を見つけようとしています。M1=1したがって、Rで予測関数を使用する場合、必要なnewxreg部分と予測のために指定する必要があると思いますM2,...,M12=0-正しいですか? コードをいじってみましたが、動作させることができず、予測式の newxreg 部分に関する非常に詳細な情報をオンラインで見つけることができませんでした。

特定の月、たとえば 1 月の予測を取得する方法を誰か説明してもらえますか? そして、予測関数の newxreg 部分でどのように注意する必要がありますか?

よろしくお願いします!

4

1 に答える 1

6

私は最終的に方法を見つけたので、それを投稿したいと思いました-それが他の誰かを助ける場合に備えて。したがって、基本的に、 newxreg は、予測が必要なリグレッサーの値を含むマトリックスである必要があります。したがって、私の場合、リグレッサーはすべて 1 または 0 (コード化された変数) で、特定の月を指定しました。そこで私がしたことは、newxreg として使用する 0 と 1 のマトリックスを作成したことです。私がしたことは、行列 mx を定義してから、予測関数で newxreg=mx を設定することです。mx の行数 >= n.ahead の行数であることを確認しました。

pred <- predict(fit,n.ahead=n, newxreg=mx)

これが他の人にも役立つことを願っています!

于 2013-04-29T21:09:15.270 に答える