複数時点の観測データ

今までの分析ではすべてクロスセクション(横断面)データまたは時系列データを想定していた。

  • クロスセクション・データ(cross-sectional data)は、一時点における様々な個人、企業、国などに関する情報である。
customer <- read.table("customer.txt", header = T)
head(customer)
##   ID gender age freq DM
## 1  1      0  36    2  0
## 2  2      1  31    5  1
## 3  3      0  34    1  0
## 4  4      1  26    4  1
## 5  5      0  28    3  0
## 6  6      0  25    1  0
  • 時系列データ(time-series data)は、ひとりの個人(ひとつの企業、 ひとつの国など)の各時点におけるデータ系列である。
sales <- read.table("sales.txt", header = T)
head(sales)
##   date units price disp feat temp
## 1    1    27   130    0    A   24
## 2    2    23   130    0    A   23
## 3    3    41   120    1    A   27
## 4    4    39   120    1    A   26
## 5    5    18   130    0    A   21
## 6    6    24   130    0    A   21

複数時点における, 同一の人々(企業、国々)の観測値からなるデータをパネル・データ(panel data)と呼ぶ。

life <- read.csv("life_xt.csv")
head(life)
##   id t income life shock y2 shock_y2
## 1  1 1    300    3     0  0        0
## 2  1 2    300    1     0  1        0
## 3  2 1    300    3     1  0        0
## 4  2 2    300    4     1  1        1
## 5  3 1     50    3     1  0        0
## 6  3 2    300    2     1  1        1
  • 複数時点における異なる人々(企業、国々)からなる横断面データは、繰り返しクロスセクション・データ(repeated cross-sectional data)と呼ばれる。

繰り返しクロスセクション・データとしてのパネル・データ

いくつかあるデータセットを合わせて一つのデータセットにすることを、データを一括またはプールする(pool)と言う。

  • 千代田区民のデータと新宿区民のデータをプールする。
  • 1990年の千代田区民のデータと2000年の千代田区民のデータをプールする。
  • 上記の2つはプールされたクロスセクション・データである。

パネルデータの利点の一つは、データをプールすることにより標本数を大きくすることができることである。

  • プールされたクロスセクションデータにおいては、同じ個人のデータでも時点が異なれば別の人として扱う。

差の差の推定量

ある政策が与える影響を計測することを考える。

  • 例えば、政府が導入した雇用補助金について、雇用を促進し平均所得を引き上げる効果があったのかを評価する。
  • 政策後に1を取るようなダミー変数を用いて回帰分析をした結果、ダミー変数は有意に推定されたとする。
  • 例えば、雇用補助金を導入した後に、定数項ダミー係数が有意に正だった(平均所得が上がった)とする。
  • しかし、このような平均所得の変化が、「政策の効果」なのか「好況不況などの時系列変化の影響を表しているにすぎない」のかを判断するのは難しい。

もし、ある政策が導入されている地域と導入されていない地域があれば、繰り返しクロスセクション・データを使ってその政策の効果を調べることが可能な場合がある。

差の差の推定法

一般的に、政策の影響を受けるグループを処置群(treatment group)、影響を受けないグループを対照群(control group)と呼ぶ。

  • 各個人がどちらのグループに入るかは無作為に決まっているとすると、政策の効果は、ただ単に政策実施前と後の(平均値の)変化を二つのグループ間で比較するだけでわかる。
  • 例えば、1995年に補助金制度が導入され、その前後の平均所得が以下のように与えられているとする。
補助金あり 補助金なし
1990年 600万円 700万円
2000年 550万円 600万円
  • 補助金ありのグループの時系列データだけを見ると、平均所得は、補助金後に50万円下がっている。
  • 補助金導入後の2000年におけるクロスセクション・データだけを見ると、補助金ありのグループの平均所得は、補助金なしのグループより小さい。
  • よって、クロスセクション・データあるいは時系列データからは「補助金は所得を引き下げる」という結論になる。
  • しかし、一括されたクロスセクション・データを用いて両グループの所得の減少分を比較すると以下のようになる。
    • 補助金のあるグループ:50万円の減少
    • 補助金のないグループ:100万円の減少
  • 1990年から2000年までの時系列変化(不況など)の影響はどちらのグループでも同じだとすると、補助金がなければ100万円所得が減るところが、50万円の減少にとどまったのは補助金の効果と考えられる。
  • すなわち「補助金は平均所得を50万円引き上げた」と判断するのが妥当になる。
  • このように、時間を通じた変化(差)が、政策導入の有無によって異なる(差がある)かを見ることで政策の効果を調べる方法は、差の差の推定法(difference in differences:D-in-D法)と呼ばれる。

差の差(D-in-D)の推定量

2つの時点を\(t=1,2\)とし、対照群をグループ\(A\)、処置群をグループ\(B\)とする。

  • 各時点\(t=1,2\)とグループ\(g=A,B\)のそれぞれの\(Y\)の平均を\(Y_{t,g}\)とすると、差の差の検定統計量は次のように与えられる。 \[ (Y_{2,B} - Y_{2,A}) - (Y_{1,B} - Y_{1,A}) = (Y_{2,B} - Y_{1,B}) - (Y_{2,A} - Y_{1,A}) \]
  • 例えば、先の補助金の例では、差の差の検定統計量は次のようになる。 \[ (550 - 600) - (600 - 700) = 50 \]
  • 近年の実証分析において差の差の推定量は数多く利用されている。
  • 非常に直感的で、実際の測定も比較的簡単にできるので、有益な政策評価方法と言える。
  • 特に、この方法を実施するためには、繰り返しクロスセクション・データがあれば十分で、必ずしもパネル・データは必要ではない点も魅力的である。

パネル・データがある場合は、さらに強力な方法で政策評価を行うことができる。

より精度の高い差の差の推定法

各個人のより詳細な情報がある場合は、多重回帰モデルを用いてより精度の高い「差の差の推定」ができる。

  • 時点\(t\)における個人\(i\)\(Y\)\(Y_{it}\)とする。
  • ダミー変数を次のように定義する。
    • \(T_{i}\):対照群であれば1、そうでなければ0となる政策ダミー変数
    • \(AFTER_{t}\):政策実施後(時点\(t=2\))であれば1、そうでなければ0となる時間ダミー変数
    • \(T_{i} \times AFTER_{t}\):上記2つのダミー変数の交差項
  • 次のような多重回帰モデルを考える。 \[ Y_{it} = \beta_{0} + \beta_{1}T_{i} + \beta_{2}AFTER_{t} + \beta_{3}(T_{i} \times AFTER_{t}) + u_{it} \qquad (i=1,2,\cdots,n, \quad t = 1,2) \]
    • 一括されたクロスセクション・データを使って推定された\(\beta_{3}\)の推定値は、差の差の推定法による推定値と一致する。
  • その他に\(Y\)に影響を与えるような変数が利用できる場合は、それらの外的条件を制御しながら政策効果を推定することができる。
  • そのような変数を\(C_{it}\)とすると, 次のような多重回帰モデルが得られる. \[ Y_{it} = \beta_{0} + \beta_{1}T_{i} + \beta_{2}AFTER_{t} + \beta_{3}(T_{i} \times AFTER_{t}) + \beta_{4}C_{it} + u_{it} \qquad (i=1,2,\cdots,n, \quad t = 1,2) \]
    • この場合も、\(\beta_{3}\)が政策の効果となる。

\(Y\)のみでも政策の効果を測ることはできるが、より詳細な情報を利用できる場合は、多重回帰モデルにより外的条件を制御することができ、より精度の高い政策効果の評価が可能になる。

自己選択によるバイアス

各個人がどちらのグループに入るかが無作為には決まっていない場合も多い。

  • 例えば、職業訓練プログラムの賃金上昇効果を分析したいとき、プログラムへの参加は個人の意思決定であることが多い。
  • 職業訓練に参加する人は、もともとやる気のある(生産性の高い)人だとすると、たとえプログラムには何の意味がないとしても、職業訓練に参加した人は高い賃金が観測される。
  • この場合は、2つのグループの平均賃金を比較しても、それを職業訓練プログラムの効果と解釈するのは難しい。
  • このように、処置を受けるかどうかが個人の意思決定に依存し、特定の性質を持った人々が処置群に入ることを自ら選んでいる場合には、自己選択(self-selection)があると言う。

多重回帰モデルによる「差の差の推定」であれば、成果変数\(Y\)に効果を与えると考えられる外的条件をできるだけ制御しながら分析できる。

  • 職業訓練プログラムの例であれば、労働者の学歴や職歴といった観測される外的条件を説明変数として用いる。

この点で、回帰分析に基づいた差の差の推定は、単なる平均値の比較に基づいた差の差の推定よりも優れている。

  • しかし、観測できない要因がプログラムへの参加と相関していることも多い。
  • 例えば「やる気」や「個人の能力」などの観測できない要因が職業訓練プログラムへの参加に影響を与えている可能性がある。
  • この場合、推定されたプログラム参加の効果には(自己選択)バイアスがかかるため、この推定値を政策の効果と解釈するのは問題がある。

このような自己選択問題を解決するために、次のような方法が行われている。

  • 各個人が処置群と対照群のどちらのグループに入るかを無作為に決める無作為化比較試験(randomized controlled trial:RCT\(\to\) 参考文献2-4
  • 自然災害や制度変更を利用した自然実験(natural experiment)\(\to\) 参考文献2-4
  • マッチング法 \(\to\) 参考文献1(第10章)
  • 回帰不連続デザイン(regression discontinuity design:RDD)\(\to\) 参考文献1(第11章)

2期間パネル・データ

パネル・データは同じ個人の繰り返しセクション・データなので、当然「差の差の推定」に用いることもできる。しかし、パネル・データが使える場合は、「個人特有で、時間を通じて不変な観測できない外的条件をすべて制御する」ことができる。

1階差分法

簡単化のため、2時点分のパネル・データを用いて、次の多重回帰モデルを推定することを考える。 \[ Y_{it} = \beta_{0} + \beta_{1}X_{1it} + \cdots + \beta_{K}X_{Kit} + v_{i} + u_{it} \qquad (i=1,2,\cdots,n, \quad t = 1,2) \]

  • \(v_{i}\)は時間を通じて変化しない観測できない個人特有の要因である。
    • 例えば、生まれ持っての個人の能力といったものである。
  • この個人の要因\(v_{i}\)個別効果(individual effect)と呼ばれ、時間を通じて変化しない個人\(i\)特有のありとあらゆるものを含む。
  • \(v_{i}\)は観測できないので、実際に推定できるのは以下の多重回帰モデルである。 \[ Y_{it} = \beta_{0} + \beta_{1}X_{1it} + \cdots + \beta_{K}X_{Kit} + e_{it} \qquad (i=1,2,\cdots,n, \quad t = 1,2) \]
  • ただし、\(e_{it}\)は個別効果を含む誤差項\(e_{it} = v_{i} + u_{it}\)である。
  • 個別効果\(v_{i}\)と説明変数に相関がある場合、誤差項\(e_{it}\)と説明変数は相関を持ち、最小2乗法では正しい推定値を得られない。
    • 例えば、\(Y_{i}\)を年収、\(X_{i}\)を修学年数、\(v_{i}\)を生まれもっての個人の能力とする。
    • 能力の高い人ほど修学年数が長い傾向がある場合、\(v_{i}\)\(X_{i}\)と相関を持つ。
    • すなわち、\(X_{i}\)は内生変数となり、最小二乗推定量は不偏性も一致性も満たさない。
  • 説明変数に内生性がある場合、操作変数法を用いるのが一般的な対処法である。
  • しかし、パネル・データが利用できる場合は、操作変数がなくても、この個別効果を制御できる場合がある。

パネル・データを使って個別効果\(v_{i}\)を制御する方法は、実は大変簡単である。

  • それぞれの観測値\(i\)について、時間方向の差分をとればよい。
  • この時間を通じた差分をとることによって個別効果を取り除くやり方は、1階差分法(first-difference method)と呼ばれる。
  • 1階の差分をとった変数を次のように定義する。

\[ \Delta Y_{i} = Y_{i2} - Y_{i1}、\quad \Delta X_{ij} = X_{i2j} - X_{i1j}, \quad \Delta u_{i} = u_{i2} - u_{i1} \]

  • すると、先の多重回帰モデルは次のように書き直すことができる。

\[ \Delta Y_{i} = \beta_{1} \Delta X_{i1} + \beta_{2} \Delta X_{i2} + \cdots + \beta_{K} \Delta X_{iK} + \Delta u_{i} \]

  • 時間を通じて不変な個別効果\(v_{i}\)は差分によって消去される。
  • よって、\(\Delta u_{i}\)と説明変数に相関がなければ、通常の最小2乗法を用いて係数を一致推定することができる。

上の1階の差分をとった回帰モデルには定数項\(\beta_{0}\)が含まれていないが、時点1と時点2で定数項が異なるモデルを推定することもできる。

  • \(t=1\)であれば0、\(t=2\)であれば1となるダミー変数\(D_{t}\)を用いた回帰モデルを考える。 \[ Y_{it} = \beta_{0} + \delta_{0}D_{t} + \beta_{1}X_{it1} + \cdots + \beta_{k}X_{itk} + v_{i} + u_{it} \]

  • 1階の差分をとると次のようになる。 \[ \Delta Y_{i} = \delta_{0} + \beta_{1} \Delta X_{i1} + \beta_{2} \Delta X_{i2} + \cdots + \beta_{K} \Delta X_{iK} + \Delta u_{i} \]

  • このモデルを用いて、時点1と時点2の定数項の違い\(\delta_{0}\)を推定することができる。

  • このように時点によって定数項が違うことを考慮することは、時点固定効果を考慮するとも言う。

  • 1階差分法を使うと、観測できない個別効果だけでなく、時間を通じて不変な変数の効果はすべて取り除かれてしまう。

    • 例えば、性別や出身地のような変数は1階の差分により消えてしまう。
  • 1階差分法を用いて個別効果を取り除く場合は、時間を通じて変化しない変数をもとの回帰モデルに入れないように注意が必要である。

2期間パネル・データを用いた政策評価

自己選択があるときに差の差の推定法を使って政策効果を評価したいときには、観測できる外的条件をできるだけ制御することが望ましい。パネル・データが利用可能な場合は、時間を通じて変化しない個別効果を制御しながら政策効果の評価を行うことができる。

  • 個別効果を考慮した次のような多重回帰モデルを考える。 \[ Y_{it} = \beta_{0} + \beta_{1}T_{i} + \beta_{2}AFTER_{t} + \beta_{3}(t_{i} \times AFTER_{t}) + \beta_{4}C_{it} + v_{i} + u_{it} \qquad (i=1,2,\cdots,n, \quad t = 1,2) \]
  • それぞれの時点での回帰モデルは以下のようになる。 \[ \begin{align*} Y_{i2} &= \beta_{0} + \beta_{1}T_{i} + \beta_{2} + \beta_{3}T_{i} + \beta_{4}C_{i2} + v_{i} + u_{i2} \\[0.2em] Y_{i1} &= \beta_{0} + \beta_{1}T_{i} \hspace{4.5em} + \beta_{4}C_{i1} + v_{i} + u_{i1} \end{align*} \]
  • 一階の差分をとると、個別要因を除去した次のようなモデルが得られる。 \[ \Delta Y_{i} = \beta_{2} + \beta_{3}T_{i} + \beta_{4} \Delta C_{i} + \Delta u_{i} \quad (i=1,2,\cdots,n) \]
  • 上のモデルを最小2乗法で推定すれば、差の差の推定量の推定値\(\hat{\beta}_{3}\)が得られ、政策効果の評価を行うことができる。

3期間以上のパネル・データがある場合も、同様の方法により差の差の推定量を求めることができる。

  • 例えば3期間のデータの場合、2期目と1期目の差分と3期目と2期目の差分をとり、2期分の1階差分のデータを一括して最小2乗法により推定すればよい。
  • この場合には、推定に用いることのできるサンプルサイズが大きくなるので、情報量が増え、より精度の高い政策効果の評価が期待できる。

応用例:2期間パネルによる政策効果

病気やけがをすると生活の満足度は下がるのかを調べるために、次のような多重回帰モデルを考える。

\[ life_{it} = \beta_{0} + \beta_{1}shock_{i} + \beta_{2}D_{t} + \beta_{3}(shock_{i} \times D_{t}) + \beta_{4}income_{it} + v_{i} + u_{it} \quad (i=1,2,\cdots,n, \ t = 1,2) \]

  • \(life_{it}\)は生活の満足度, \(income_{it}\)は所得、\(shock_{i}\)\(D_{t}\)は次のようなダミー変数である。
    • \(shock_{i}\)\(t=2\)時点から見て過去1年間に病気やけがで休んだことのある場合は1、そうでない場合は0となるダミー変数
    • \(D_{t}\)\(t=2\)時点である場合は1、そうでない場合は0となるダミー変数
  • 個別効果を考慮せずに\(t=2\)のクロスセクション・データを用いる場合は、\(D_{2}=1\)なので、次のモデルを推定することになる。 \[ \begin{align*} life_{i2} &= \beta_{0} + \beta_{1}shock_{i} + \beta_{2} + \beta_{3}shock_{i} + \beta_{4}income_{i2} + u_{i2} \\ &= (\beta_{0} + \beta_{2}) + (\beta_{1} + \beta_{3})shock_{i} + \beta_{4}income_{i2} + u_{i2} \end{align*} \]

3020人分の2007年(\(t=1\))と2009年(\(t=2\))について、以下の変数が収録されているデータセットを用いる。

  • \(life\):生活満足度(0から4で大きいほど満足度が高い)
  • \(income\):年収(単位は万円)
  • \(shock\):2008年に病気やけがで仕事を休んだことがあれば1、そうでなければ0となるダミー変数
  • データセットには、以下の変数も含まれている。
    • y2:2009年(\(t=2\))であれば1、そうでなければ0となるダミー変数
    • shock_y2\(shock\)y2との交差項(2009年(\(t=2\))で、かつ2008年に病気やけがで仕事を休んだことがあれば1、そうでなければ0となるダミー変数)
      • 差分をとると、2008年に病気やけがで仕事を休んだことがあれば1、そうでなければ0となるダミー変数となる。
#データの読み込み
life <- read.csv("life_xt.csv", header = TRUE)
head(life)
##   id t income life shock y2 shock_y2
## 1  1 1    300    3     0  0        0
## 2  1 2    300    1     0  1        0
## 3  2 1    300    3     1  0        0
## 4  2 2    300    4     1  1        1
## 5  3 1     50    3     1  0        0
## 6  3 2    300    2     1  1        1

2009年(\(t=2\))のデータを使って推定すると次のようになる。

#t=2期目(2009年)のデータを使って最小2乗法で回帰
reg1 <- lm(life ~ shock + income, data = subset(life, t==2))
summary(reg1)
## 
## Call:
## lm(formula = life ~ shock + income, data = subset(life, t == 
##     2))
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.9558 -0.6737  0.2417  0.3948  1.4512 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  2.674e+00  3.053e-02  87.575  < 2e-16 ***
## shock       -1.249e-01  3.460e-02  -3.609 0.000312 ***
## income       2.822e-04  7.101e-05   3.974 7.23e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.9342 on 3017 degrees of freedom
## Multiple R-squared:  0.009842,   Adjusted R-squared:  0.009186 
## F-statistic: 14.99 on 2 and 3017 DF,  p-value: 3.313e-07
  • \(shock\)の係数の推定値は負で統計的に有意である。

個別効果を考慮するために2時点のデータを使って一階の差分をとった回帰モデル \[ \Delta life_{i} = \beta_{2} + \beta_{3}shock_{i} + \beta_{4} \Delta income_{i} + \Delta u_{i} \] を推定すると次のようになる。

#t=1のデータを抽出
life_s1 <- subset(life, t == 1)
head(life_s1)
##    id t income life shock y2 shock_y2
## 1   1 1    300    3     0  0        0
## 3   2 1    300    3     1  0        0
## 5   3 1     50    3     1  0        0
## 7   4 1    400    3     1  0        0
## 9   5 1    200    3     0  0        0
## 11  6 1      0    2     0  0        0
#t=2のデータを抽出
life_s2 <- subset(life, t == 2)
head(life_s2)
##    id t income life shock y2 shock_y2
## 2   1 2  300.0    1     0  1        0
## 4   2 2  300.0    4     1  1        1
## 6   3 2  300.0    2     1  1        1
## 8   4 2  400.0    3     1  1        1
## 10  5 2  200.0    3     0  1        0
## 12  6 2   12.5    2     0  1        0
#t=2とt=1の差分を取る
life_ds <- life_s2 - life_s1
head(life_ds)
##    id t income life shock y2 shock_y2
## 2   0 1    0.0   -2     0  1        0
## 4   0 1    0.0    1     0  1        1
## 6   0 1  250.0   -1     0  1        1
## 8   0 1    0.0    0     0  1        1
## 10  0 1    0.0    0     0  1        0
## 12  0 1   12.5    0     0  1        0
#差分を取ったデータを使って最小2乗法で回帰
reg2 <- lm(life ~ shock_y2 + income , data = life_ds)
summary(reg2)
## 
## Call:
## lm(formula = life ~ shock_y2 + income, data = life_ds)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.2600 -1.0752 -0.0976  0.8070  3.9694 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.2153646  0.0313550   6.869 7.84e-12 ***
## shock_y2    -0.1401174  0.0484445  -2.892  0.00385 ** 
## income       0.0002233  0.0001614   1.383  0.16666    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.309 on 3017 degrees of freedom
## Multiple R-squared:  0.003434,   Adjusted R-squared:  0.002773 
## F-statistic: 5.197 on 2 and 3017 DF,  p-value: 0.005581
  • 個別効果を制御した分析においても、\(shock\)shock_y2)の係数は有意に負となる。
  • よって、病気やけがをしたということが原因で生活の満足度を引き下げていると解釈することができる。

Rにはパネル・データ分析用パッケージplmがある。

  • 関数plmのオプションでmodel = "fd"と指定することで、1階差分法によって回帰モデルを推定することができる。
#パネル・データ分析用パッケージインストール
# install.packages("plm") 
#パネル・データ分析用パッケージ読み込み
library(plm)

#plmパッケージを用いて,1階差分法(fd)による回帰
preg1 <- plm(life ~ shock_y2 + income, data = life, effect ="individual", 
             model = "fd", index = c("id", "t"))
summary(preg1)
## Oneway (individual) effect First-Difference Model
## 
## Call:
## plm(formula = life ~ shock_y2 + income, data = life, effect = "individual", 
##     model = "fd", index = c("id", "t"))
## 
## Balanced Panel: n = 3020, T = 2, N = 6040
## Observations used in estimation: 3020
## 
## Residuals:
##      Min.   1st Qu.    Median   3rd Qu.      Max. 
## -4.260022 -1.075247 -0.097576  0.806964  3.969410 
## 
## Coefficients:
##                Estimate  Std. Error t-value  Pr(>|t|)    
## (Intercept)  0.21536463  0.03135500  6.8686 7.842e-12 ***
## shock_y2    -0.14011741  0.04844452 -2.8923  0.003851 ** 
## income       0.00022329  0.00016141  1.3834  0.166659    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    5186.5
## Residual Sum of Squares: 5168.7
## R-Squared:      0.0034335
## Adj. R-Squared: 0.0027729
## F-statistic: 5.19735 on 2 and 3017 DF, p-value: 0.0055809
  • 係数の推定値や標準誤差など、1階差分法と同じ結果が得られる。

平均差分法

時間を通じて変化しない個別効果を制御する別の推定方法として、平均差分法と呼ばれる方法がある。この方法では、各個人についての被説明変数と説明変数すべての時間平均を作り、その平均と各変数の差分をとることによって個別効果を消去する。

  • 具体的に, \(T\)期間分(\(T>1\))のパネル・データを使って次のような多重回帰モデルを推定する場合を考える。 \[ Y_{it} = \beta_{0} + \beta_{1}X_{1it} + \cdots + \beta_{K}X_{Kit} + v_{i} + u_{it} \qquad (i=1,2,\cdots,n, \quad t = 1,\cdots,T) \]
  • 各個人\(i\)について両辺の時間平均をとると、次のようになる。 \[ \bar{Y}_{i} = \beta_{0} + \beta_{1}\bar{X}_{1i} + \cdots + \beta_{K}\bar{X}_{Ki} + \bar{u}_{i} \quad (i=1,2,\cdots,n) \]
  • ここで、時間平均は次のように定義される。 \[ \bar{Y}_{i} = \frac{1}{T}\sum_{t=1}^{T}Y_{it}, \quad \bar{X}_{ji} = \frac{1}{T}\sum_{t=1}^{T}X_{jit}, \quad \bar{u}_{i} = \frac{1}{T}\sum_{t=1}^{T}u_{it} \qquad (j=1,2,\cdots,K) \]
  • 多重回帰モデルからこの時間平均の差分をとると、次のようになる。 \[ Y_{it} - \bar{Y}_{i} = \beta_{1}(X_{1it}-\bar{X}_{1i}) + \cdots + \beta_{K}(X_{Kit}-\bar{X}_{Ki}) + (u_{it}-\bar{u}_{i}) \]
  • 個別効果は除去されるので、説明変数がすべての誤差項と無相関である(強外生性(strongly exogenous)と呼ばれる)とすると、上のモデルの係数は最小2乗法で一致推定することができる。

なお、一階差分法と同様に、平均差分法では時間を通じて変化しない変数の係数は推定できないので、そのような変数を含めないように注意が必要である。

応用例:平均差分法による政策評価

先の応用例で推定した多重回帰モデルを、平均差分法で推定する。

  • データセットには、2009年であれば1、2007年であれば0となるダミー変数y2\(shock\)との交差項shock_y2も含まれている。
  • これらの変数を使って、次の多重回帰モデルを推定する。 \[ life_{it} = \beta_{0} + \beta_{1}shock_{i} + \beta_{2}y2_{t} + \beta_{3}shock\_y2_{it} + \beta_{4}income_{it} + v_{i} + u_{it} \]
  • Rにはパネル・データ分析用パッケージplmがある。
  • 関数plmのオプションでmodel = "within"と指定することで、平均差分法によって回帰モデルを推定することができる。
  • 上の多重回帰モデルの推定結果は次のようになる。
#パネル・データ分析用パッケージ読み込み
library(plm)

#固定効果モデル(within)を用いた回帰
preg1 <- plm(life ~ shock + y2 + shock_y2 + income, data = life, effect ="individual", 
             model = "within", index = c("id", "t"))
summary(preg1)
## Oneway (individual) effect Within Model
## 
## Call:
## plm(formula = life ~ shock + y2 + shock_y2 + income, data = life, 
##     effect = "individual", model = "within", index = c("id", 
##         "t"))
## 
## Balanced Panel: n = 3020, T = 2, N = 6040
## 
## Residuals:
##     Min.  1st Qu.   Median  3rd Qu.     Max. 
## -2.13001 -0.45121  0.00000  0.45121  2.13001 
## 
## Coefficients:
##             Estimate  Std. Error t-value  Pr(>|t|)    
## y2        0.21536463  0.03135500  6.8686 7.842e-12 ***
## shock_y2 -0.14011741  0.04844452 -2.8923  0.003851 ** 
## income    0.00022329  0.00016141  1.3834  0.166659    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    2634
## Residual Sum of Squares: 2584.4
## R-Squared:      0.018844
## Adj. R-Squared: -0.96394
## F-statistic: 19.3148 on 3 and 3017 DF, p-value: 2.1065e-12
  • \(shock\)という変数は時間を通じて変化せず、個別効果とともに取り除かれてしまうため、その係数は推定できず出力表から省略されている。
  • 注目すべき変数は\(shock\)y2の交差項shock_y2で、その係数の推定値は有意に負となっており、先ほどの1階差分法による係数と一致している。
  • このように、2期間パネル・データを使うと、1階差分法でも平均差分法でも推定値は全く同じになる。
    • 3期間以上のパネル・データを使うと両者の推定値は一般的に異なる。