複数の季節成分を含む時系列を分解する方法は?


22

2つの季節成分を含む時系列があり、その系列を次の時系列成分(トレンド、季節成分1、季節成分2、不規則成分)に分解したいと思います。私の知る限り、Rでシリーズを分解するためのSTL手順では、季節成分は1つしか許可されないため、シリーズを2回分解してみました。まず、次のコードを使用して、頻度を最初の季節成分に設定します。

ser = ts(data, freq=48)
dec_1 = stl(ser, s.window="per")

次に、dec_1次のように頻度を2番目の季節成分に設定することにより、分解された系列の不規則成分()を分解しました。

ser2 = ts(dec_1$time.series[,3], freq=336)
dec_2 = stl(ser2, s.window="per")

このアプローチには自信がありません。また、複数の季節性を持つシリーズを分解する他の方法があるかどうかを知りたいです。また、tbats()R 予測パッケージの関数を使用すると、複数の季節性を持つシリーズにモデルを適合させることができますが、それを使用してシリーズを分解する方法はわかりません。


こんにちは、サイトへようこそ。2つの季節的要素について、それらは異なる周期性を持っていますか?例えば、週ごとと月ごとですか?
ミシェル

1
これについては、Rob Hyndman、Koehler、Ord、Snyderの第14章「指数平滑法による予測」で説明しています。HyndmanにはRの予測パッケージもあります。Hyndmanがこのトピックについてこのサイトに投稿したことを思い出すようですが、それは彼のブログにあったかもしれません。
zbicyclist

@Michelle返信ありがとうございます。ええ、2つの季節成分は異なる周期性を持っています。前者の周期性は48(毎日の季節性)であり、後者の周期性は336(毎週の季節性)です。30分ごとの時系列です。
エース

@zbicyclistあなたが見ている予測パッケージは、元の投稿で言及した「予測」パッケージだと思います。私はこのパッケージのtbats関数を見てきましたが、それを分解に使用する方法を述べていません。本をチェックして、さらにイラストが見つかるかどうかを確認します。
エース

2
ここに私が考えていたものがあります。Hyndmanのブログに載っていました。robjhyndman.com/papers/complex-seasonality
zbicyclist

回答:


13

forecastbats()tbats()バツtt

ETSモデルのより良い説明については、式のhttp://robjhyndman.com/papers/complex-seasonality/およびHyndman et al(2008)を参照してください。BATSとTBATSはETSの拡張です。

例えば:

fit <- bats(myTimeseries)
fit$x

この場合、の各行はxフーリエのような倍音になります。

コンポーネントを自動的に分解して表示する機能もplot.tbats()ありplot.bats()ます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.