2

時系列データの需要予測を予測する作業をしています。

dputData出力は変数に保存されます

Data <- structure(list(Yr = c(2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 
2010L, 2010L, 2010L, 2010L, 2010L, 2010L, 2011L, 2011L, 2011L, 
2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 2011L, 
2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 2012L, 
2012L, 2012L, 2012L, 2013L, 2013L, 2013L, 2013L, 2013L, 2013L, 
2013L, 2013L, 2013L), Month = c(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 
9L, 10L, 11L, 12L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 
12L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 1L, 2L, 
3L, 4L, 5L, 6L, 7L, 8L, 9L), Demand = c(58L, 59L, 108L, 145L, 
109L, 105L, 104L, 175L, 101L, 105L, 254L, 199L, 187L, 201L, 149L, 
93L, 126L, 115L, 136L, 94L, 135L, 116L, 112L, 95L, 122L, 247L, 
188L, 121L, 237L, 190L, 187L, 206L, 206L, 156L, 198L, 154L, 231L, 
190L, 237L, 250L, 182L, 250L, 118L, 123L, 222L)), .Names = c("Yr", 
"Month", "Demand"), class = "data.frame", row.names = c(NA, -45L
 ))

str(Data)

Demand変数のログ変換をDecompose行い、季節性を確認します

Data$Log_Demand = log(Data$Demand)
splot <- ts(Data$Log_Demand, start=c(2010, 1),end=c(2013,9),frequency=12)              
fit <- stl(splot, s.window="period") 
monthplot(splot) 
library(forecast)
seasonplot(splot)

月のプロットと季節のプロットを取得します。観測された季節のパターンをコーディングするのは難しいと思います。

Data$Seasonal_Jan = ifelse(Data$time %in% c(1,13,25,37),1,0)

私の質問は次のとおりです。

グラフから、季節パターンが観察された月を自動的に見つけて、lmモデルでその変数を使用してトレンド コンポーネントに適合させる季節のダミー変数 (上記のように) をコーディングし、lmモデルの残差から ARIMA モデルを適合させたいと考えました。予測を予測します。

4

1 に答える 1