はじめに
時系列解析を
を基に勉強していく。
1. 時系列
1.1 時系列とは
- 時系列(データ)とは、「時間とともに変動する現象の記録」(P.2)である。
- 時系列は、①連続・離散、②単変量・多変量、③定常・非定常*1で分類できる。
- 時系列解析とは、「時系列(データ)から何らかの知見を得ること」(P.7)である。 ・記述(description):視覚的に時系列の特徴を表現すること ・モデリング(modeling):データの背後にある時系列の確率的構造をモデルで表現し、その構造を解析すること ・予測(prediction):現在までの情報から将来の変動を予測すること
1.2 時系列プロット
- 時系列解析でまず行うべきことは、データを図示すること。
- これにより、特徴を掴む。
1.3 時系列データの前処理と変動分解
- 時系列データ
が、不規則な現象であっても、その構造が時間的に変化せずに一定の確率モデルからの実現値と見なすことができる場合、その時系列を定常時系列という。
- 「時系列データは、傾向変動(トレンド)、循環変動(サイクル)、季節変動(シーズナル)、不規則変動(ノイズ)の四つの変動に分解することができる。このように分解した変動から非定常部分を除去することで、定常時系列を取り出すことができる。」(P.11)
- 「状態空間モデルの場合、非定常時系列のままでモデリングや予測が可能となる」(P.11)
1.3.1 時系列データの前処理
- 「原系列
が非定常系列であっても、ある変換を施した系列
が定常時系列に見えることがある」(P.11)
- 対数変換:
- ロジット変換:
-
変換:
- 差分:
- 前期比:
1.3.2 時系列データの変動分解
であるような時系列
は、4つの成分に分解して解析する方法が伝統的にある。
- 傾向変動
:トレンドともいい、上昇または下降などの比較的単調ないし滑らかな長期的傾向。
- 循環変動
:トレンドのまわりで上下する秋季が定まっていない循環的変動。
- 季節変動
:季節によって左右される、1年を周期として規則的に繰り返される変動*2。
- 不規則変動
:上記以外の説明がつかない突発的な変動や不規則活短期間の上下に起こる小変動。
- 上記の加法モデル以外にも、乗法モデル
がある。また、傾向変動
循環変動
を分解する必要が小さければ、これらを組み合わせたトレンド・循環変動
を考えた、
を考えることもある。
- データから3成分への分解結果を推定する方法を考える。トレンド・循環変動を除去するには、移動平均法がある:時点
での
の値を、
時点前から
時点後までの
個の
の値
を用いて、
により推定する。このようにして得られたを
項移動平均という。
を
項移動平均も存在する:
- 一般に、
項移動平均を用いると、周期を
とする循環成分が除去される。また
を大きくすれば、不規則変動が除去される(ただし、意味のある傾向変動も除去される恐れがある。)。
- 原系列から移動平均を控除した
は、季節変動と不規則変動を含む。次に、季節変動を除去することを考える。
- 季節成分は、単位時数ごと(たとえば、月ごと、四半期ごと)に平均を取り、それぞれから全体の平均を除去したものを季節変動成分
とする:たとえば、月ごとの季節成分を考え、
年分のデータを基に
年
月のデータを考えれば、
を計算する。 - こうして求めた
を系列
から除去した
がを不規則変動の推定量とする。
############################# ### UKgasを用いた変動分解 ### ############################# data(UKgas) plot(UKgas, main = "原系列") # Class class(UKgas) # 周期性の確認 acf(UKgas, main = "自己相関係数") pacf(UKgas, main = "偏自己相関係数") spec.pgram(UKgas, main = "スペクトル分析") # 単位根検定 obj <- PP.test(UKgas) (obj$p.value > 0.05) # 変動分解 UKgas.stl <- stats::stl(UKgas,s.window="periodic") plot(UKgas.stl, main = "3変動分解")
![]() |
![]() |
![]() |
![]() |
![]() |