グレンジャー因果検定(Granger Causality Test)は、時系列データを使って、あるデータが別のデータに影響を与えている可能性があるかどうかを検証する統計手法です。この記事では、中学生でも理解できるようにシンプルな説明から、具体的な数式や検定方法まで丁寧に解説します。
※この記事は、ChatGPTの出力を基に作成しています。
1. グレンジャー因果検定の基本的な考え方
因果関係とは?
「Aが起きたからBが起きた」という関係を「因果関係」といいます。例えば:
- 雨が降ると、地面が濡れる → 因果関係あり
- 鳥が鳴くと太陽が昇る → 因果関係なし
しかし、単にAとBが同じタイミングで起きているだけでは因果関係があるとは言えません。グレンジャー因果検定は、「A(原因)→B(結果)」という因果関係があるかを統計的に調べます。
時系列データとは?
時系列データとは、時間とともに変化するデータのことです。例として以下のものがあります:
- 毎日の気温
- 時間ごとの売上
- 分ごとの心拍数
グレンジャー因果検定は、こうしたデータの「時間の流れ」を利用します。
2. グレンジャー因果検定の仕組み
モデルの考え方
グレンジャー因果検定では、次の2つのモデルを比較します。
(a) ( Y_t ) を ( Y ) の過去のデータだけで説明するモデル
$
Y_t = a_0 + \sum_{i=1}^p a_i Y_{t-i} + \epsilon_t
$
- $\ Y_t $:現在のデータ
- $\ Y_{t-i} $:過去のデータ
- $\ \epsilon_t $:予測誤差(残差)
このモデルは、$\ Y $ の変動が $\ Y $ 自身の過去の値だけで説明されると仮定しています。
(b) ( Y_t ) を ( Y ) と ( X ) の過去のデータで説明するモデル
$
Y_t = b_0 + \sum_{i=1}^p b_i Y_{t-i} + \sum_{j=1}^q c_j X_{t-j} + \epsilon_t
$
- $\ X_{t-j} $:$\ X $ の過去のデータ
このモデルでは、$\ Y $ の変動が $\ Y $ の過去と $( X $ の過去の両方で説明されると仮定します。
帰無仮説と対立仮説
-
帰無仮説 $( H_0 )$:「$\ X $ の過去のデータは $\ Y $ に影響を与えない」
- 数式で表すと、モデル (b) の $\ c_j = 0 $(すべての $\ j $ について)。
-
対立仮説 $( H_1 )$:「$\ X $ の過去のデータは ( Y ) に影響を与える」
- 数式で表すと、少なくとも1つの $( c_j \neq 0 )$。
3. F検定による判定方法
グレンジャー因果検定では、モデル (a) とモデル (b) を比較して、どちらがデータをよく説明できているかを調べます。その際に使うのがF検定です。
F統計量の計算式
F統計量は次の式で計算されます:
$
F = \frac{(RSS_a - RSS_b) / (k_b - k_a)}{RSS_b / (n - k_b)}
$
各項の説明
- $\ RSS_a $:モデル (a) の残差平方和(予測誤差の大きさ)
- $\ RSS_b $:モデル (b) の残差平方和
- $\ k_a $, $\ k_b $:モデル (a), (b) の自由度(パラメータの数)
- $\ n $:データのサンプル数
F値の意味
- $\ F $ が大きいほど、「モデル (b) がモデル (a) よりもデータをよく説明している」と言えます。
- 臨界値(F分布の値)を超えると、帰無仮説 $\ H_0 $ を棄却します。
- 帰無仮説が棄却される場合、$\ X $ の過去のデータが $\ Y $ に影響を与えていると結論付けます。
4. 具体例で解説
次の例でグレンジャー因果検定を計算してみます。
データの例
- $\ Y_t $:アイスクリームの売上
- $\ X_t $:気温
- サンプル数:$\ n = 50 $
- ラグ数:$\ p = q = 2 $
- モデル (a) の残差平方和:$\ RSS_a = 100 $
- モデル (b) の残差平方和:$\ RSS_b = 80 $
ステップ1:F統計量の計算
- モデル (a) の自由度:$\ k_a = 3 $(切片 $\ a_0 $ + 2つのラグ)
- モデル (b) の自由度:$\ k_b = 5 $(切片 $\ b_0 $ + 2つのラグ + 2つの $\ X $ のラグ)
F統計量:
$
F = \frac{(RSS_a - RSS_b) / (k_b - k_a)}{RSS_b / (n - k_b)}
$
$
F = \frac{(100 - 80) / (5 - 3)}{80 / (50 - 5)} = \frac{20 / 2}{80 / 45} = \frac{10}{1.78} \approx 5.62
$
ステップ2:判定
自由度 $( 2, 45 )$ のF分布に基づいて臨界値を求め、有意水準 $\ \alpha = 0.05 $ で比較します。
- 仮に臨界値が $\ 3.2 $ だとすると、$\ F = 5.62 > 3.2 $ なので帰無仮説を棄却。
- 結論:気温$( X )$はアイスクリームの売上$( Y )$に影響を与えている可能性が高い。
5. 注意点
-
因果関係を完全に証明するわけではない
グレンジャー因果検定は「影響を与えている可能性」を示すだけで、真の因果関係があると断定することはできません。隠れた要因(例:季節など)が存在する可能性も考慮すべきです。 -
時系列データの前提条件
検定を行う前にデータが「定常性」を満たしているか確認する必要があります。定常性がない場合は、差分を取るなどの処理が必要です。
6. まとめ
グレンジャー因果検定は、時系列データを使って「あるデータが別のデータに影響を与えているか」を調べる強力な手法です。その計算にはF検定を用い、モデル間の説明力を比較します。手順は次の通りです:
- $\ Y $ のみのモデルと、$\ Y $ と $ X $ のモデルを作成。
- 残差平方和を計算。
- F統計量を計算し、帰無仮説を検定。
正確な結論を得るには、データの性質や前提条件を十分に確認することが重要です。興味があれば、実際のデータを使って検定を行ってみてください!