Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

固定効果モデル

パネルデータ

異なる時点で同じ個体についての情報を観測したデータをパネルデータ (panel data)という。

被説明変数YYと説明変数X=(X1,…,XK)X = (X_1, \dots, X_K)に時点ttと個体iiの添字をつけて

{(Yit,Xit)},i=1,…,N,t=1,…,T\{ (Y_{it}, X_{it}) \}, \hspace{2em} i = 1, \dots, N, \hspace{1em} t = 1, \dots, T

のような形で表記される

Loading...

Pooled OLS

パネルデータ分析において、個体や時間による固定効果(fixed effect)を特に考慮しないで(固定効果が無いと仮定して)通常の重回帰モデルを用いたモデルをPooled OLSと呼ぶ。

Yit=βXit+εitY_{it} = \boldsymbol{\beta} X_{it} + \varepsilon_{it}
Loading...

固定効果モデル

パネルデータを分析する際に個体差による効果(個体固定効果)や時点ごとの固有の効果(時間固定効果)の影響を除くように作ったモデルのことを固定効果モデル(fixed effect model)という。

Yit=βXit+θi+πt+εitY_{it} = \boldsymbol{\beta} X_{it} +\theta_i + \pi_t + \varepsilon_{it}

個体内の変動を使うため、固定効果推定量は「群内(within)推定量」と呼ばれたりもする。

one-way fixed effect model

時点や個体など、1つの固定効果に対処するモデル。一元配置固定効果モデル(one-way fixed effect model)などと呼ばれる。その推定量は「群内(within)」推定量や「固定効果(fixed effect)」推定量などとも呼ばれる。

個体固定効果モデル

以下のような個体固定効果モデルを考える。(単純化のため説明変数XXは1つのみとする)

Yit=β0+β1Xit+θi+εit(i=1,…,N, t=1,…,T)Y_{it} = \beta_0 + \beta_1 X_{it} +\theta_i + \varepsilon_{it} \hspace{2em} (i = 1, \dots, N, \ t=1,\dots, T)

パネルデータを用いることができる場合、以下の3つの方法によって個体固定効果(entity fixed effects)θi\theta_iを除去することができる。

(1) "一回の階差モデル(first difference model)"によるOLS推定

(Yi,t+1−Yit)=(β0−β0)+β1(Xi,t+1−Xit)+(εi,t+1−εit)(Y_{i,t+1} - Y_{it}) = (\beta_0 - \beta_0) + \beta_1 (X_{i,t+1}-X_{it}) + (\varepsilon_{i,t+1} - \varepsilon_{it})

記号を置き換えて、

ΔYit=β1ΔXit+Δεit\Delta Y_{it} = \beta_1 \Delta X_{it}+ \Delta \varepsilon_{it}
  • 推定方法:

    1. 説明変数、被説明変数それぞれt+1t+1期からtt期を引く

    2. 上の式をOLS推定する

Loading...
Loading...

(2) “N−1N-1個のダミー説明変数”を用いたOLS推定

最小二乗ダミー変数推定(Least Squares Dummy Variables (LSDV) 推定)とも呼ばれる。

Yit=β0+β1Xit+γ2Di(2)+⋯+γNDi(N)+εitwhere Di(2)={1for i=20otherwise, etc.Y_{it} = \beta_0 + \beta_1 X_{it} + \gamma_2 D^{(2)}_i + \cdots + \gamma_N D^{(N)}_i + \varepsilon_{it} \\ \text{where } D^{(2)}_i = \begin{cases} 1 & \text{for } i = 2\\ 0 & \text{otherwise} \end{cases} \text{, etc.}
  • 推定方法:

    1. 個体ダミー変数(個体iiに該当する場合に1、それ以外は0となるダミー変数)Di(2),⋯ ,Di(N)D^{(2)}_i, \cdots, D^{(N)}_iを作成する

    2. 上の式をOLS推定する

Loading...

(3) ”平均差分法(Entity-demeaned)”を用いたOLS推定

Y~it=β1X~it+ε~it,where Y~it=Yit−Yˉi,Yˉi=1T∑t=1TYitX~it=Xit−Xˉi,Xˉi=1T∑t=1TXitε~it=εit−εˉi,εˉi=1T∑t=1Tεit\begin{align} \tilde{Y}_{it} &= \beta_1 \tilde{X}_{it} + \tilde{\varepsilon}_{it}, \\ \text{where } \tilde{Y}_{it} &= Y_{it} - \bar{Y}_i, \hspace{1em} \bar{Y}_i = \frac{1}{T} \sum^T_{t=1} Y_{it}\\ \tilde{X}_{it} &= X_{it} - \bar{X}_i, \hspace{1em} \bar{X}_i = \frac{1}{T} \sum^T_{t=1} X_{it}\\ \tilde{\varepsilon}_{it} &= \varepsilon_{it}- \bar{\varepsilon}_i, \hspace{1em} \bar{\varepsilon}_i = \frac{1}{T} \sum_{t=1}^T \varepsilon_{it} \end{align}
  • 推定方法:

    1. 説明変数・被説明変数について、変数から期間平均を引く

    2. 上の式をOLS推定する

  • N−1N-1個の個体ダミー説明変数による推定と同じ推定値が得られる

  • 統計ソフトでは通常は平均差分法による推定が行われる

Loading...
/usr/local/lib/python3.9/site-packages/statsmodels/base/model.py:607: ConvergenceWarning: Maximum Likelihood optimization failed to converge. Check mle_retvals
  warnings.warn("Maximum Likelihood optimization failed to "
/usr/local/lib/python3.9/site-packages/statsmodels/regression/mixed_linear_model.py:2201: ConvergenceWarning: Retrying MixedLM optimization with lbfgs
  warnings.warn(
/usr/local/lib/python3.9/site-packages/statsmodels/base/model.py:607: ConvergenceWarning: Maximum Likelihood optimization failed to converge. Check mle_retvals
  warnings.warn("Maximum Likelihood optimization failed to "
/usr/local/lib/python3.9/site-packages/statsmodels/regression/mixed_linear_model.py:2201: ConvergenceWarning: Retrying MixedLM optimization with cg
  warnings.warn(
         Mixed Linear Model Regression Results
========================================================
Model:            MixedLM Dependent Variable: inv       
No. Observations: 200     Method:             REML      
No. Groups:       20      Scale:              8912.8075 
Min. group size:  10      Log-Likelihood:     -1196.1133
Max. group size:  10      Converged:          No        
Mean group size:  10.0                                  
--------------------------------------------------------
            Coef.  Std.Err.   z    P>|z|  [0.025  0.975]
--------------------------------------------------------
Intercept  -42.714    9.501 -4.496 0.000 -61.335 -24.092
value        0.116    0.006 19.854 0.000   0.104   0.127
capital      0.231    0.025  9.136 0.000   0.181   0.280
Group Var    0.585                                      
========================================================

/usr/local/lib/python3.9/site-packages/statsmodels/base/model.py:607: ConvergenceWarning: Maximum Likelihood optimization failed to converge. Check mle_retvals
  warnings.warn("Maximum Likelihood optimization failed to "
/usr/local/lib/python3.9/site-packages/statsmodels/regression/mixed_linear_model.py:2207: ConvergenceWarning: MixedLM optimization failed, trying a different optimizer may help.
  warnings.warn(msg, ConvergenceWarning)
/usr/local/lib/python3.9/site-packages/statsmodels/regression/mixed_linear_model.py:2219: ConvergenceWarning: Gradient optimization failed, |grad| = 1.131047
  warnings.warn(msg, ConvergenceWarning)
/usr/local/lib/python3.9/site-packages/statsmodels/regression/mixed_linear_model.py:2262: ConvergenceWarning: The Hessian matrix at the estimated parameter values is not positive definite.
  warnings.warn(msg, ConvergenceWarning)

導出

固定効果のある

Yit=β0+β1Xit+θi+εitY_{it} = \beta_0 + \beta_1 X_{it} +\theta_i + \varepsilon_{it}

というモデルを考えるとき、その推定量は

(β^0,β^1,θ^1,θ^2,…,θ^N)=arg minβ0,β1,θ1,…,θN∑i=1N∑t=1T(Yit−β0−β1Xit−θi)2(\hat{\beta}_0, \hat{\beta}_1, \hat{\theta}_1, \hat{\theta}_2, \dots, \hat{\theta}_N) \renewcommand{\argmin}{\mathop{\rm arg~min}\limits} = \argmin_{\beta_0, \beta_1, \theta_1, \dots, \theta_N} \sum^N_{i=1} \sum^T_{t=1} (Y_{it} - \beta_0 - \beta_1 X_{it} - \theta_i)^2

より、この最小化問題の一階条件は

∑i=1N∑t=1TXit(Yit−β^0−β^1Xit−θ^i)=0\sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \hat{\beta}_0 - \hat{\beta}_1 X_{it} - \hat{\theta}_i) = 0

となり、各ユニットiiについて

∑t=1T(Yit−β^0−β^1Xit−θ^i)=0→∑t=1T(Yit−β^0−β^1Xit)=Tθ^i→θ^i=1T∑t=1T(Yit−β^0−β^1Xit)=1T∑t=1TYit−β^0−β^11T∑t=1TXit=Yˉi−β^0−β^1Xˉi,(Yˉi:=1T∑t=1TYit,Xˉi:=1T∑t=1TXit)\sum^T_{t=1} (Y_{it} - \hat{\beta}_0 - \hat{\beta}_1 X_{it} - \hat{\theta}_i) = 0\\ \to \sum^T_{t=1} (Y_{it} - \hat{\beta}_0 - \hat{\beta}_1 X_{it}) = T \hat{\theta}_i\\ \begin{align} \to \hat{\theta}_i &= \frac{1}{T} \sum^T_{t=1} (Y_{it} - \hat{\beta}_0 - \hat{\beta}_1 X_{it})\\ &= \frac{1}{T} \sum^T_{t=1} Y_{it} - \hat{\beta}_0 - \hat{\beta}_1 \frac{1}{T} \sum^T_{t=1} X_{it}\\ &= \bar{Y}_{i} - \hat{\beta}_0 - \hat{\beta}_1 \bar{X}_{i}, \hspace{1em} \left(\bar{Y}_{i} := \frac{1}{T} \sum^T_{t=1} Y_{it}, \bar{X}_{i} := \frac{1}{T} \sum^T_{t=1} X_{it}\right)\\ \end{align}

となる。これを一階条件に代入すると

∑i=1N∑t=1TXit(Yit−β^0−β^1Xit−Yˉi+β^0+β^1Xˉi)=0∑i=1N∑t=1TXit(Yit−Yˉi−β^1Xit+β^1Xˉi)=0∑i=1N∑t=1TXit(Yit−Yˉi−β^1(Xit−Xˉi))=0∑i=1N∑t=1TXit(Yit−Yˉi)−∑i=1N∑t=1TXitβ^1(Xit−Xˉi)=0\begin{align} \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \hat{\beta}_0 - \hat{\beta}_1 X_{it} - \bar{Y}_{i} + \hat{\beta}_0 + \hat{\beta}_1 \bar{X}_{i}) &= 0 \\ \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i} - \hat{\beta}_1 X_{it} + \hat{\beta}_1 \bar{X}_{i}) &= 0 \\ \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i} - \hat{\beta}_1 (X_{it} - \bar{X}_{i})) &= 0 \\ \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i}) - \sum^N_{i=1} \sum^T_{t=1} X_{it} \hat{\beta}_1 (X_{it} - \bar{X}_{i}) &= 0 \end{align}
∑i=1N∑t=1TXitβ^1(Xit−Xˉi)=∑i=1N∑t=1TXit(Yit−Yˉi)\sum^N_{i=1} \sum^T_{t=1} X_{it} \hat{\beta}_1 (X_{it} - \bar{X}_{i}) = \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i})

こう移行できるか?

1NT∑i=1N∑t=1TXitβ^1(Xit−Xˉi)=1NT∑i=1N∑t=1TXit(Yit−Yˉi)β^11NT∑i=1N∑t=1TXit(Xit−Xˉi)=1NT∑i=1N∑t=1TXit(Yit−Yˉi)\frac{1}{NT} \sum^N_{i=1} \sum^T_{t=1} X_{it} \hat{\beta}_1 (X_{it} - \bar{X}_{i}) = \frac{1}{NT} \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i}) \\ \hat{\beta}_1 \frac{1}{NT} \sum^N_{i=1} \sum^T_{t=1} X_{it} (X_{it} - \bar{X}_{i}) = \frac{1}{NT} \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i})
β^1=∑i=1N∑t=1TXit(Yit−Yˉi)∑i=1N∑t=1TXit(Xit−Xˉi)\hat{\beta}_1 = \frac{ \sum^N_{i=1} \sum^T_{t=1} X_{it} (Y_{it} - \bar{Y}_{i}) }{ \sum^N_{i=1} \sum^T_{t=1} X_{it} (X_{it} - \bar{X}_{i}) }

TODO: このへん整理

5.193824955195333

two-way effect model

時点効果+個体効果 といった2つの効果を同時に固定する

Yit=β1Xit+θi+πt+εitY_{it} =\beta_1 X_{it} +\theta_i + \pi_t + \varepsilon_{it}

個体の固定効果θi\theta_iと時間の固定効果πt\pi_tの両方を除去したい場合は、それぞれの推定方法の組み合わせになる。

  1. N−1N-1個の個体ダミー変数とT−1T-1個の時間ダミー変数を用いたOLS推定

  2. entity demeaningとT−1T-1個の時間ダミー変数を用いたOLS推定

  3. time demeaningとN−1N-1個の個体ダミー変数を用いたOLS推定

  4. entity & time demeaningを用いたOLS推定

    • 説明変数と被説明変数について、個体と時間両方の平均を引いてOLS推定

なお、パネルデータを活用した計量経済分析では、時間固定効果がないと仮定できるケースはまれであるため、通常はone-way固定効果モデルではなくtwo-way固定効果モデルを用いる。

Loading...

比較

Loading...

変量効果モデル

変量効果という概念もある

  • 個体に固有の効果が説明変数と相関する場合、その効果を**固定効果(fixed effect)**と呼ぶ。

  • 個体に固有の効果が説明変数と相関しない場合、その効果を**変量効果(random effect)**と呼ぶ。

Pooled OLSでも推定できる

θi\theta_iを個体に固有の効果として

Yit=βXit+θi+εitY_{it} = \boldsymbol{\beta} X_{it} + \theta_i + \varepsilon_{it}

という線形モデルを考えたとき、変量効果モデルではθi\theta_iはXitX_{it}と無相関であるためθi+εit\theta_i + \varepsilon_{it}をひとまとめに誤差項ϵit\epsilon_{it}として捉えて

Yit=βXit+ϵitY_{it} = \boldsymbol{\beta} X_{it} + \epsilon_{it}

のように扱いPooled OLSとして推定すると、通常の最小二乗法の仮定を満たすためPooled OLS推定量は一致性をもつ。

変量効果モデル

通常、変量効果モデルと呼ぶ場合はθi\theta_iとXitX_{it}の独立を仮定し、FGLSで推定を行うらしい

参考文献