0

Rob Hyndman のバッチ予測アプローチを使用して、dataframe. 私のコードは次のとおりです。

require(forecast)

zips <- read.csv(file.choose(), header = T)
zips <- zips[,-c(1,2)]
ns <- ncol(zips)

zips <- ts(zips, frequency = 12, start = c(2005,1), end = c(2014,12))
zips <- HoltWinters(zips, seasonal = "mult")

h <- 24

fcast <- matrix(NA, nrow=h, ncol=ns)
for(i in 1:ns) {
    fcast[,i] <- forecast.HoltWinters(zips[,i], h=h)
}

write(t(fcast), file="fcast.csv", sep=",",ncol=ncol(fcast))

通常のforecast関数を使用すると問題なく動作しますが、エラーが発生し続けます

[zip[,i] のエラー: 次元数が正しくありません]

HoltWintersここで構築したこのループを使用して、この予測を実行するにはどうすればよいですか?

4

3 に答える 3

0

予測をマトリックスではなくリストに保存してみてください。また、関数は、入力としてベクトルを必要とする関数によって生成されるforecast.HoltWintersクラスのオブジェクトを必要とします。ポイント予測とは別に、デフォルトでは、関数は予測間隔の境界も生成します。HoltWintersHoltWintersforecast.HoltWinters

fcast <- list()

for(i in 1:ns) {

  zips_fit <- HoltWinters(zips[, i], seasonal = "mult")
  fcast[[i]] <- forecast.HoltWinters(zips_fit, h = h)
}
于 2015-10-27T21:15:12.167 に答える