現在、次の問題に取り組んでいます。このデータ セットを使用して、Data Smart Forecasting の例を実行しています。
library(forecast)
mydata <- c(165, 171, 147, 143, 164, 160, 152, 150, 159, 169, 173, 203, 169, 166, 162, 147, 188, 161, 162, 169, 185, 188, 200, 229, 189, 218, 185, 199, 210, 193, 211, 208, 216, 218, 264, 304)
mydata.ts <- ts(mydata, frequency = 12, start = c(2010, 1))
mydata.forecast <- forecast(mydata.ts)
plot(mydata.forecast)
このコードを使用して、本に書かれているとおり、Holt-Winters Forecast を生成します。ここで、35 の以前の観測を使用するだけで、月 #36 (値 = 304) を予測できると思っていました。
mydata1 <- c(165, 171, 147, 143, 164, 160, 152, 150, 159, 169, 173, 203, 169, 166, 162, 147, 188, 161, 162, 169, 185, 188, 200, 229, 189, 218, 185, 199, 210, 193, 211, 208, 216, 218, 264)
mydata1.ts <- ts(mydata1, frequency = 12, start = c(2010, 1))
mydata1.forecast <- forecast(mydata1.ts)
plot(mydata1.forecast)
これは、傾向と季節性を伴う予測ではなく、単純な一定レベルの予測を生成します。
mydata1.forecast$mean
Jan Feb Mar Apr May Jun Jul Aug
2012
2013 239.1952 239.1952 239.1952 239.1952 239.1952 239.1952 239.1952 239.1952
2014 239.1952 239.1952 239.1952 239.1952 239.1952 239.1952 239.1952 239.1952
Sep Oct Nov Dec
2012 239.1952
2013 239.1952 239.1952 239.1952 239.1952
2014 239.1952 239.1952 239.1952
そのような時系列を切り取るという直感があります
elements in time series / modulo 12 != 0
予測の誤りにつながります。しかし、どうすればこの問題を克服できますか?
また、時系列に 24 の要素が含まれるように、最初の 11 の観測をカットしようとしました
mydatacut <- c(203, 169, 166, 162, 147, 188, 161, 162, 169, 185, 188, 200, 229, 189, 218, 185, 199, 210, 193, 211, 208, 216, 218, 264)
mydatacut.ts <- ts(mydatacut, frequency = 12, start = c(2010, 1))
mydatacut.forecast <- forecast(mydatacut.ts)
plot(mydatacut.forecast)
mydatacut.forecast$mean
Jan Feb Mar Apr May Jun Jul Aug Sep
2012 240.437 240.437 240.437 240.437 240.437 240.437 240.437 240.437 240.437
2013 240.437 240.437 240.437 240.437 240.437 240.437 240.437 240.437 240.437
Oct Nov Dec
2012 240.437 240.437 240.437
2013 240.437 240.437 240.437
したがって、これも役に立ちません。
すべてのヒントと提案は高く評価されています。