推測統計●●●●○

差の差法

Difference in Differences ・ さのさほう

施策前後の変化を対照群と比べ、共通トレンドを差し引いて効果を取り出す手法

✦ 30秒で試す — 航海どちらも伸び方が変わっても、揃ってさえいれば効果は測れる施策が処置群の売上を押し上げた効果は?予想してみる

概要

差の差法(DID)は、施策を受けたグループ(処置群)の前後の変化から、施策を受けなかったグループ(対照群)の前後の変化を差し引いて、施策の効果を取り出す手法です。「差(前後の変化)」の「差(群間の比較)」を取ることが名前の由来です。ある州だけ最低賃金が上がった、あるチェーンの一部店舗だけ新制度を導入した——こうした「一部にだけ変化が起きた」状況で威力を発揮します。

単純な前後比較は「景気や季節のせいかもしれない」という疑いを消せず、単純な群間比較は「もともと違う集団だから」という疑いを消せません。DID はこの2つの弱点を互いに打ち消し合わせます。時間とともに起きる共通の変化は対照群の前後差として観測されるので、それを処置群の前後差から引けば、残りは施策の効果だけになる——という理屈です。無作為割付ができない政策評価やビジネス施策の検証で、因果推論の定番手法として広く使われています。

制度変更や災害のように「研究者が仕組んだわけではないが、実験のように一部だけに変化が起きた」状況は自然実験と呼ばれ、DID はその分析の代表的な道具です。自然実験による実証研究の潮流は、2021年のノーベル経済学賞(カード、アングリスト、インベンス)にもつながりました。

なぜ生まれたか

政策の効果を知りたくても、「住民を無作為に分けて片方だけ最低賃金を上げる」ようなランダム化比較試験は現実には実行できません。かといって導入前後の比較だけでは、同時期の景気変動という交絡を排除できず、導入した地域としない地域の比較だけでは、地域間のもともとの違いを排除できませんでした。

突破口になったのが「2方向の差し引きを組み合わせる」発想です。原型は19世紀まで遡り、ロンドンのコレラ研究で知られるジョン・スノウが、水源を切り替えた水道会社の給水地区と切り替えなかった地区の死亡率の変化を比べた分析は DID の先駆けとされます。現代的な確立を象徴するのが1990年代、カードとクルーガーによる最低賃金研究です。最低賃金を引き上げたニュージャージー州と、隣接して経済環境が似ているペンシルベニア州のファストフード店の雇用を引き上げ前後で比較し、「雇用は減っていない」と示したこの研究は、自然実験というデータの見方とともに DID を実証分析の標準装備に押し上げました。

詳細

計算の骨格——2×2の表と反事実

最小構成の DID は、群(処置/対照)×時点(前/後)の4つの平均値だけで計算できます。処置群の前後差から対照群の前後差を引いた値が効果の推定値です。たとえば施策導入店の売上が 100→130(+30)、非導入店が 100→120(+20)なら、効果は 30 − 20 = +10 と見積もります。

この引き算が意味を持つのは、「もし施策がなかったら、処置群も対照群と同じだけ変化していたはず」という想定を置いているからです。つまり対照群のトレンドを借りて、処置群の反事実(施策なしの世界の姿)を描いている——これが DID の本質です。推定しているのは、実際に施策を受けた処置群にとっての効果(ATT)です。

時間成果施策の導入対照群処置群実績反事実——施策がなければ対照群と平行に伸びたはず効果導入前は2本のトレンドが平行= 共通トレンドの根拠
差の差法の構造——対照群のトレンドを借りて反事実を描き、実績とのギャップを効果とみなす

回帰による定式化——TWFE とイベントスタディ

実務では4つの平均の引き算ではなく、回帰分析で推定するのが標準です。成果を目的変数とし、「処置群ダミー」「施策後ダミー」、そして両者の積である交互作用項を説明変数に置くと、この交互作用の係数がちょうど DID の推定値に一致します。群や時点が多い場合は、個体ごとの固定効果と時点ごとの固定効果を同時に入れた二方向固定効果モデル(TWFE)に拡張するのが定番です。回帰の形にすることで、他の共変量による調整や、多期間・多群への拡張が自然に行えます。

さらに、「施策後ダミー」をひとまとめにせず「導入の3期前、2期前、…、導入期、1期後、…」と相対時点ごとのダミーに分けたものがイベントスタディです。導入前の係数がほぼ 0 に並んでいれば平行トレンドの傍証になり、導入後の係数の並びからは効果が徐々に立ち上がるのか、一時的なのかといった時間的な形まで読み取れます。

注意したいのは標準誤差です。同じ地域・同じ店舗のデータは時点をまたいで互いに似ている(系列相関がある)ため、観測を独立とみなした通常の標準誤差は小さく出すぎ、効果がないのに「有意」になりがちです。2004年のベルトランらの研究はこの問題を大規模に示し、以来、地域や店舗の単位でまとめたクラスタ頑健標準誤差を使うのが標準になっています。処置を受けた単位(州など)が数個しかない場合は、それでも不確かさを過小評価しやすい点に注意が必要です。

生命線——平行トレンドの仮定

DID の成否は「施策がなければ、処置群と対照群は同じトレンドで推移した」という平行トレンドの仮定にかかっています。この仮定そのものは反事実に関する主張なので直接検証できませんが、傍証は示せます。定番は導入前の複数期間で2群のトレンドが平行だったかを確認することで、導入前から乖離していたなら仮定は信じがたくなります。2群の水準(絶対値)が違うこと自体は問題になりません。水準の差は最初の引き算で消えるからです。

下の体験では、処置群の導入前のトレンドをつかんで動かせます。平行を崩したとき、推定がどちらへどれだけずれるか、そして導入前のデータにその兆候が出ているかを見比べてください。

⚡ 体験: 平行トレンドを崩すと推定がずれる
前々期前期導入後施策の導入対照群処置群推定 10.0真の効果 10↕ つかんで上下
DiD が仮定する反事実(対照群と平行)本当の反事実(現実には見えない)ずれ
DiD 推定10.0真の効果10.0推定のずれ0.0導入前のずれ0.0

いまは導入前の2本の線が平行。対照群の伸びを借りた点線(反事実)は本当の反事実と重なり、推定は真の効果 10 に一致しています。金色の「前々期」の点を上下にドラッグして、平行を崩してみてください。

架空データ。前々期・前期は導入前、導入後は処置群だけが施策を受けた時点。推定 =(処置群の前期→導入後の変化)−(対照群の同じ変化)

処置群がもともと速く伸びていると、その伸びまで施策の効果に数えてしまい推定は過大になります。伸び悩んでいたなら過小です。そしてトレンドが直線なら、導入前に見えていたずれと推定のずれは同じ大きさになります。導入前の期間を2期以上用意してプレトレンドを確かめる理由がここにあります。ただし、導入前が平行だったことは導入後も平行であることの保証ではありません。プレトレンドの検定で「有意差なし」だったというだけで安心するのは早計で、検出力が低ければ無視できないずれを見逃します。

仮定が崩れる典型例にも注意が必要です。処置群だけに影響する別の出来事が同時期に起きた場合、効果とその出来事の影響を区別できません。施策の対象が「直前に成果が落ち込んだ群」として選ばれた場合、落ち込みからの自然な回復(平均への回帰)を効果と誤認します。職業訓練の評価で知られるアシェンフェルターのディップがこの罠です。施策の影響が対照群にも波及する場合(隣県への買い物流出など)は、対照群が「施策なしの世界」を代表しなくなり、効果を過大・過小に見積もります。

見落とされやすいのが尺度の問題です。平行トレンドは「どの尺度で測ったトレンドが平行か」に依存します。売上の水準で見て平行なら、2群の水準が違う限り対数(伸び率)で見ると平行ではなく、その逆も成り立ちます。水準と対数のどちらで分析するかで推定値の符号が変わることさえあるので、「絶対数で同じだけ増えるはず」なのか「同じ率で伸びるはず」なのかを、分野の知識から先に決めておく必要があります。

使いどころと発展

DID が向いているのは、施策の導入時点が明確で、処置群と似た推移を示す対照群が見つかり、前後の期間のデータが揃っている場面です。政策評価のほか、ビジネスでも「一部店舗のみの施策」「特定地域限定のキャンペーン」の検証に使えます。A/Bテストのような無作為化ができないが、時系列の比較対象はある——その隙間を埋める手法です。

近年の大きな論点は、導入時期が群ごとにずれる場合(段階的導入)の TWFE の歪みです。先に導入した群が後から導入する群の「対照」として使われてしまい、効果が時間とともに変わると推定値が大きく歪む——ときには符号まで逆転する——ことが2020年前後に相次いで示され(グッドマン=ベーコンの分解など)、導入時期ごとに比較を組み直す新しい推定量が使われるようになりました。対照群の重み付き合成で処置群そっくりの比較対象を作る合成コントロール法も、対照群がうまく見つからない場面の有力な拡張です。平行トレンドさえ疑わしい場面では、操作変数法や傾向スコアなど別の仮定に立つ手法との併用・比較で結論の頑健さを確かめます。

試問

施策を導入した処置群(金)と、導入しなかった対照群(青緑)の成果の推移です(架空データで、施策の真の効果は 10)。差の差法(DiD)は「処置群の導入前後の変化」から「対照群の同じ時期の変化」を引いて効果を推定する方法で、施策がなければ両群は平行に伸びたはず、という仮定に立っています。ここでは両群の「前々期」の点をそれぞれつかんで上下に動かし、導入前の伸びを変えられます。どちらの群も、トレンドは直線だとします。

✦ 命題挑戦中

処置群と対照群の導入前の伸び(前々期→前期)をどちらも 4 から 2 以上変えたうえで、DiD 推定を真の効果 10 に一致させよ

  • 処置群の導入前の伸びを 4 から 2 以上変える(いま 4.0)
  • 対照群の導入前の伸びも 4 から 2 以上変える(いま 4.0)
  • DiD 推定が真の効果 10 に一致する(±0.3。いま 10.0)
⚡ 体験: 2つの「前々期」の点をつかんで、両群の伸びを変える
前々期前期導入後施策の導入対照群処置群推定 10.0真の効果 10↕ つかんで上下
DiD が仮定する反事実(対照群と平行)本当の反事実(現実には見えない)ずれ
DiD 推定10.0真の効果10.0推定のずれ0.0導入前のずれ0.0

いまは導入前の2本の線が平行。対照群の伸びを借りた点線(反事実)は本当の反事実と重なり、推定は真の効果 10 に一致しています。金色の「前々期」の点を上下にドラッグして、平行を崩してみてください。

架空データ。前々期・前期は導入前、導入後は処置群だけが施策を受けた時点。推定 =(処置群の前期→導入後の変化)−(対照群の同じ変化)