2016-08-08 3 views
3

指数平滑法を使用して予測を作成しようとしていますが、 "nonseasonal data"というエラーが表示されます。これは明らかに真実ではありません。以下のコードを参照してください。 このエラーが発生するのはなぜですか?私は別の機能を使用すべきですか(シンプル、ダブル、減衰トレンド、季節、ウィンターズの方法を実行できるはずです)?ets:ets(timeseries、model = "MAM")のエラー:Nonseasonalデータ

library(forecast) 

timelen<-48 # use 48 months 
dates<-seq(from=as.Date("2008/1/1"), by="month", length.out=timelen) 

# create seasonal data 
time<-seq(1,timelen) 
season<-sin(2*pi*time/12) 
constant<-40 
noise<-rnorm(timelen,mean=0,sd=0.1) 
trend<-time*0.01 
values<-constant+season+trend+noise 

# create time series object 
timeseries<-as.ts(x=values,start=min(dates),end=max(dates),frequency=1) 
plot(timeseries) 

# forecast MAM 
ets<-ets(timeseries,model="MAM") # ANN works, why MAM not? 
ets.forecast<-forecast(ets,h=24,level=0.9) 
plot(ets.forecast) 

おかげ&種類は、あなたが数値ベクトルから時系列を作成するには、単にtsを使用する必要があります

答えて

2

について。詳細については、ヘルプファイルを参照してください。

開始値と終了値が正しく指定されていません。 周波数を1に設定すると、有効な季節性であるではなく、となります。季節性がない場合と同じです。

試してみてください。あなたのコメントで

timeseries <- ts(data=values, frequency=12) 
ets <- ets(timeseries, model="MAM") 
print(ets) 
#### ETS(M,A,M) 
#### Call: 
#### ets(y = timeseries, model = "MAM") 
#### ... 

enter image description here

質問、なぜANN作品第三Nは何seasonnalityを意味していないので、モデルでも非季節時系列を用いて計算することができるためです。

関連する問題