イントロダクション
「気温が上がった翌日に、アイスの売上が増えた」。では、「アイスの売上が増えた翌日に、気温が上がる」ことはあるでしょうか? ありません。通常、原因は結果より先に起きるからです。
この「時間の順序」を使って、2つの時系列データのうち、どちらが先導しているかを調べる方法が、グレンジャー因果です。1969年に Clive Granger が提案しました。ただし、名前に「因果」と付いていても、本当の因果とは限りません。この記事では、そのズレを、具体例で確かめます。
グレンジャー因果とは
グレンジャー因果とは、「$Y$の過去の値だけで予測するより、$X$の過去の値も使って予測したほうが、$Y$をうまく予測できるとき、$X$は$Y$のグレンジャー原因である」という考え方です。Grangerは、このようにデータで検証できる形で、因果とフィードバックを定義することを提案しました。
検定のしくみ
アイスの売上を例に、2つのモデルを比べます。
- 制限モデル: $\text{今日のアイス} = a + b \times \text{前日のアイス}$
- 非制限モデル: $\text{今日のアイス} = a + b \times \text{前日のアイス} + c \times \text{前日の気温}$
帰無仮説は、「$c = 0$(気温の過去の値は、アイスの予測に役立たない)」です。気温を加えたときに、予測の誤差(残差平方和、$RSS$)がどれだけ減るかを、$F$検定で調べます。
$$
F = \frac{(RSS_{\text{制限}} – RSS_{\text{非制限}})/q}{RSS_{\text{非制限}}/(n-k)}
$$
$q$ は追加した変数の数、$n$ はデータ数、$k$ は非制限モデルの係数の数です。誤差が大きく減るほど $F$ は大きくなり、$p$値は小さくなります。
注意点:グレンジャー因果は、本当の因果ではありません。グレンジャー因果が示すのは、「過去の値が、予測に役立つ」という先行関係です。$X$を動かしたら$Y$が動く、という介入の効果ではありません。
具体例①:気温とアイスの売上
300日分の架空のデータを使います。気温は前日の気温に引きずられて変化し、アイスの売上は、自分の前日の値と、前日の気温に反応するように作りました。つまり、正解は「気温 → アイス」の一方向です。
アイスが前日の気温に反応するのは、遅れを見せるための単純化です。現実には、アイスの売上は、その日の気温にも反応します。ただし、気温のように、前日の値が今日の値に引き継がれやすい変数なら、同じ日に反応する場合でも、この検定は「気温 → アイス」を検出します(第5章の表)。

図1: 気温(上)がピークになった翌日に、アイスの売上(下)がピークになる。アイスの売上は、気温の動きを1日遅れでなぞっている。
| 向き | $RSS$(制限 → 非制限) | $F$値 | $p$値 | 判定 |
|---|---|---|---|---|
| 気温 → アイス | $433.8 \to 280.1$ | $162.3$ | $6.2 \times 10^{-30}$ | 有意 |
| アイス → 気温 | $306.4 \to 305.7$ | $0.7$ | $0.41$ | 有意でない |
気温の過去の値を加えると、アイスの予測の誤差は $433.8$ から $280.1$ に減りました。逆に、アイスの過去の値を加えても、気温の予測の誤差は、ほとんど変わりません($306.4 \to 305.7$)。
意味:検定は「気温 → アイス」の一方向だけを検出しました。データの作り方(正解)と一致しています。
具体例②:見かけのグレンジャー因果
次に、日焼け止めの売上を加えます。日焼け止めは、その日の気温に反応して売れるとします(アイスは、具体例①と同じ設定のままです)。アイスとは無関係で、日焼け止めがアイスを売らせているわけではありません。

図2: 日焼け止めとアイスの間に、直接の関係はない。しかし、日焼け止めの前日の売上は、前日の気温の手がかりになり、今日のアイスの予測に役立つ。そのため、見かけの関係が現れる。
| 向き | RSS(制限 → 非制限) | F値 | p値 | 判定 |
|---|---|---|---|---|
| 日焼け止め → アイス | 433.8 → 355.6 | 65.1 | 1.8 × 10−14 | 有意 |
| アイス → 日焼け止め | 673.2 → 661.1 | 5.4 | 0.020 | 有意 |
| 日焼け止め → アイス(気温を使ったうえで) | 280.1 → 280.0 | 0.2 | 0.67 | 有意でない |
| アイス → 日焼け止め(気温を使ったうえで) | 564.9 → 564.4 | 0.2 | 0.64 | 有意でない |
無関係なはずの日焼け止めとアイスの間で、両方向とも有意になりました。日焼け止めの前日の売上は、前日の気温の「手がかり」になるので、アイスの予測に役立ちます。アイスの前日の売上も、気温の手がかりになるので、日焼け止めの予測に役立ちます。しかし、気温を使ったうえで調べると、どちらも消えます。
同じ設定を1,000回繰り返して、$5\%$水準で有意になった割合を数えました。
| 向き | 真の関係 | 有意になった割合 |
|---|---|---|
| 気温 → アイス | あり | $100\%$ |
| アイス → 気温 | なし | $6.1\%$ |
| 日焼け止め → アイス | なし(共通の原因があるだけ) | $100\%$ |
| アイス → 日焼け止め | なし(共通の原因があるだけ) | $90\%$ |
| 日焼け止め → アイス(気温を使ったうえで) | なし | $4.0\%$ |
| アイス → 日焼け止め(気温を使ったうえで) | なし | $5.0\%$ |
意味:真の関係がなければ、有意になる割合は $5\%$ 前後(有意水準)になります。ところが、共通の原因(気温)があるだけで、無関係な2つの間にも、ほぼ毎回「グレンジャー因果」が現れます。原因の候補となる変数を十分に含めていないと、見かけの関係が生じうることは、Granger自身も指摘しています。
グレンジャー因果と真の因果の関係
グレンジャー因果は、真の因果の「手がかり」ですが、一方がもう一方を含むわけではありません。「真の因果がある」ことと「グレンジャー因果がある」ことは、重なる部分もありますが、はみ出す部分もあります。次の$2 \times 2$の表で整理します。
| グレンジャー因果あり | グレンジャー因果なし | |
|---|---|---|
| 真の因果あり | ① 気温 → アイス(具体例①) | ③ 見逃される場合(下で説明) |
| 真の因果なし | ② 日焼け止め → アイス(具体例②) | ④ アイス → 気温(具体例①) |
② 真の因果がないのに、グレンジャー因果になる
具体例②のとおりです。共通の原因(気温)があると、無関係な日焼け止めとアイスの間にも、グレンジャー因果が現れます。気温を使ったうえで調べると、消えます。
③ 真の因果があるのに、グレンジャー因果にならない
次の2つの場合です。どちらも、「前日までの値だけを使う」というグレンジャー因果の定義から生じます。
- 同じ時点で効く: 電気のスイッチを押すと、すぐに電気がつくように、遅れなく効く因果です。前日の$X$が、今日の$X$の手がかりにならない(持続性がない)と、見逃されます。$X$に持続性があると、前日の$X$が今日の$X$の手がかりになるので、検出されます。気温のように、前日の値が今日の値に引き継がれやすいものは、こちらです(下の表)。
- 先読み: 人が将来を見越して行動すると、結果が原因より先に動きます。この場合、原因 → 結果の向きは見逃され、結果 → 原因の向きが検出されます。
真の効果が「$X \to Y$」のデータを作り、1,000回繰り返して、$5\%$水準で有意になった割合を数えました。
| 設定 | 「$X \to Y$」が有意 | 「$Y \to X$」が有意 |
|---|---|---|
| 同じ時点で効く($X$に持続性なし) | $4.1\%$ | $5.3\%$ |
| 同じ時点で効く($X$に持続性あり) | $100.0\%$ | $5.4\%$ |
| 先読み($X$に持続性なし) | $5.2\%$ | $100.0\%$ |
意味:「グレンジャー因果がない」ことから、「真の因果がない」とは言えません。逆に、「グレンジャー因果がある」ことからも、「真の因果がある」とは言えません。グレンジャー因果は、データ上の先行関係という「手がかり」であり、真の因果をすべて含む枠ではありません。
注意点:表の割合について、効果の大きさや持続性の強さを変えると、数値は変わります。見逃される、向きが逆に出る、という傾向を見るための例です。
活用場面
グレンジャー因果は、時系列データのあいだの「先行・遅行」を調べたい場面で使えます。分野が違っても、基本の使い方は共通です。
- 同じ間隔(日・週・月など)で並べた、2つ以上の時系列を用意する
- トレンドのあるデータは、差分や変化率にして、定常に近づける
- 何期前まで使うか(ラグの長さ)を決める
- 「$X \to Y$」と「$Y \to X$」の両方向で検定する
- 共通の原因になりそうな変数を使ったうえでも検定し、結果を「先行関係」として読む
| 分野 | どのように使うか | 変数の例 | 気をつけること |
|---|---|---|---|
| マーケティング | 施策の過去の値が、売上の予測に役立つかを調べ、施策と売上の時間的な前後関係を検証する | クーポンの配布数 → 売上 | 季節や給料日のような共通の原因で、見かけの関係が出る |
| 広告・集客 | 広告費の過去の値が、来客数の予測に役立つかを調べ、両者の時系列的な関連を分析する | チラシやCMの出稿量 → 来客数 | 曜日や天候が共通の原因になる。来客数の予想を見越して広告費を決めると、向きが逆に出ることがある |
| サプライチェーン | 需要のデータと、発注・在庫のデータの予測関係を把握し、どちらが先行するかを調べる | 店舗の販売数 → 卸への発注量 | 需要の予測にもとづいて発注するので、先読みで向きが混ざることがある |
| 金融 | 株価や金融指標どうしの、先行・遅行関係を検証する | 為替 → 株価、出来高 → 株価 | 株価は、水準のままだと定常でないことが多いので、変化率にするなどして使う。市場は将来を織り込むので、先読みにも注意する |
※ いずれの場合も、見つかるのは「予測に役立つ」という先行関係で、真の因果とは限りません。施策の効果そのものを確かめたいときは、A/Bテストなど、別の方法を使います。
まとめ
- グレンジャー因果: $Y$の過去だけの予測に、$X$の過去を加えると、予測が良くなるか
- 検定: 誤差($RSS$)の減り方を、$F$検定で調べる
- 限界: 本当の因果ではない。共通の原因があると、無関係な2つの間にも見かけの関係が出る一方、真の因果があっても、見逃されることがある
- 使い方: 他の変数を使ったうえでの検定、定常性、ラグの長さを確認する
参考文献
- Granger, C. W. J. (1969). Investigating causal relations by econometric models and cross-spectral methods. Econometrica, 37(3), 424–438. https://www.jstor.org/stable/1912791

