静学的パネルデータ分析

library(plm)
data("Grunfeld", package = "plm")
head(Grunfeld)
##   firm year   inv  value capital
## 1    1 1935 317.6 3078.5     2.8
## 2    1 1936 391.8 4661.7    52.6
## 3    1 1937 410.6 5387.1   156.9
## 4    1 1938 257.7 2792.2   209.2
## 5    1 1939 330.8 4313.2   203.4
## 6    1 1940 461.2 4643.9   207.2

\[ inv_{it} = \alpha_{i} + \beta_{1} value_{it} + \epsilon_{it} \qquad (i=1,\ldots,10, \quad t = 1, \ldots, 20) \]

Pooled OLS

  • まず、\(\alpha_{1} = \alpha_{2} = \cdots = \alpha_{10}\)であると想定してOLSで係数\(\beta_1\)を推定する。

  • このような推定法をpooled OLSと呼ぶ。

  • 関数plmのオプションでmodel = "pooling"と指定する。

pool <- plm(inv ~ value, data = Grunfeld, model = "pooling")
summary(pool)
## Pooling Model
## 
## Call:
## plm(formula = inv ~ value, data = Grunfeld, model = "pooling")
## 
## Balanced Panel: n = 10, T = 20, N = 200
## 
## Residuals:
##      Min.   1st Qu.    Median   3rd Qu.      Max. 
## -344.0841  -36.8112    1.2994   33.8427  702.8197 
## 
## Coefficients:
##               Estimate Std. Error t-value Pr(>|t|)    
## (Intercept) -6.9762843 10.2727240 -0.6791   0.4979    
## value        0.1413860  0.0060436 23.3944   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    9359900
## Residual Sum of Squares: 2486600
## R-Squared:      0.73433
## Adj. R-Squared: 0.73299
## F-statistic: 547.297 on 1 and 198 DF, p-value: < 2.22e-16
  • valueの係数\(\beta_{1}\)の推定値Estimateは正で、\(p\)Pr(>|t|)はほとんど0であることから、企業価値valueが大きいほど総投資invが増加する傾向にあることがわかる。

  • ちなみに、これはただのOLS推定なので、lm関数を用いても同じ推定結果を得る。

LSDV

  • 次に、個別効果が企業間で異なるものとして、固定効果モデルを推定する。

  • 具体的には、企業\(i=1,2,\ldots,10\)についてのダミー変数(企業\(i\)なら1、そうでなければ0となる変数)\(D_{i}\)の係数を個別効果\(\alpha_{1}, \alpha_{2}, \ldots, \alpha_{10}\)として推定する。

  • このような推定法をLSDV(least squares dummy variable)推定またはwithin推定と呼ぶ。

  • 関数plmのオプションでmodel = "within"と指定する。

fe <- plm(inv ~ value, data = Grunfeld, model = "within")
summary(fe)
## Oneway (individual) effect Within Model
## 
## Call:
## plm(formula = inv ~ value, data = Grunfeld, model = "within")
## 
## Balanced Panel: n = 10, T = 20, N = 200
## 
## Residuals:
##        Min.     1st Qu.      Median     3rd Qu.        Max. 
## -397.409491  -13.287065   -0.051989   12.538455  639.480792 
## 
## Coefficients:
##       Estimate Std. Error t-value  Pr(>|t|)    
## value 0.189878   0.017994  10.552 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    2244400
## Residual Sum of Squares: 1412300
## R-Squared:      0.37072
## Adj. R-Squared: 0.33743
## F-statistic: 111.345 on 1 and 189 DF, p-value: < 2.22e-16
  • 上記のpooled OLSの推定結果と同様に、係数\(\beta_{1}\)の推定値はどちらも有意に正である。

  • 個別効果\(\alpha_{1}, \alpha_{2}, \cdots, \alpha_{10}\)の推定値を見るには関数fixef()を用いる。

mu <- fixef(fe)
summary(mu)
##    Estimate Std. Error t-value  Pr(>|t|)    
## 1  -214.880     80.345 -2.6745 0.0081406 ** 
## 2    36.070     40.405  0.8927 0.3731551    
## 3  -266.324     39.924 -6.6707 2.733e-10 ***
## 4   -45.502     23.005 -1.9779 0.0493930 *  
## 5    17.852     19.773  0.9028 0.3677720    
## 6   -24.312     20.754 -1.1715 0.2428890    
## 7    19.154     19.517  0.9814 0.3276439    
## 8   -84.499     22.790 -3.7078 0.0002747 ***
## 9   -21.464     20.240 -1.0604 0.2903001    
## 10  -10.382     19.372 -0.5359 0.5926369    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • 1番左の番号は個体(企業)\(i\)を表す。

  • 例えば、\(\alpha_{1}\)の推定値は-215、\(\alpha_{3}\)の推定値は-266である。

  • それぞれの\(i\)について\(\alpha_{i} = 0\)かどうかの\(t\)検定の\(t\)t-value\(p\)Pr(>|t|)も与えられる。

  • 有意水準5%で企業\(i = 1, 3, 4, 8\)について有意な負の個別効果がある。

  • 個別効果の平均は次のように確認できる。

mean(mu)
## [1] -59.42872
  • 場合によっては(例えば、企業間の比較を簡単にするために)、個別効果のその平均からの乖離を見たいときがある。

    • 個別効果\(\alpha_{i}\)の推定値を\(\hat{\alpha}_{i}\)とすると、乖離は\(\hat{\alpha}_{i} - \frac{1}{N}\sum_{i=1}^{N}\hat{\alpha}_{i}\)と計算される。
  • これは次のように確認できる。

mu2 <- fixef(fe, type = "dmean")
summary(mu2)
##    Estimate Std. Error t-value  Pr(>|t|)    
## 1  -155.451     80.345 -1.9348 0.0545076 .  
## 2    95.498     40.405  2.3635 0.0191178 *  
## 3  -206.895     39.924 -5.1822 5.601e-07 ***
## 4    13.927     23.005  0.6054 0.5456393    
## 5    77.280     19.773  3.9083 0.0001294 ***
## 6    35.117     20.754  1.6921 0.0922778 .  
## 7    78.582     19.517  4.0265 8.191e-05 ***
## 8   -25.071     22.790 -1.1001 0.2726988    
## 9    37.965     20.240  1.8757 0.0622376 .  
## 10   49.047     19.372  2.5319 0.0121585 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • ここでの\(t\)t-valueは、乖離が0かどうか、すなわち、それぞれの個別効果が個別効果全体の平均から異なるかどうかを検定していることに注意する必要がある。

  • 平均からの相対的な効果を見ると、企業\(i=2,5,7,10\)は有意な正の個別効果が、企業\(i=3\)は有意な負の個別効果があることがわかる。

  • ここで、個別効果があるかどうかの\(F\)検定を行う。

  • 帰無仮説を「全ての個別効果が同じ値」として、次のように設定する。

\[ H_{0}: \alpha_{1} = \alpha_{2} = \cdots = \alpha_{10} \]

  • 帰無仮説のもとでのpooled OLS推定の結果poolと、そうでない(個別効果がある)LSDV推定の結果feをインプットとして、pFtest()関数を用いて\(F\)検定を行う。

    • 1番目にLSDV推定の結果feを、2番目にpooled OLS推定の結果poolと指定することに注意する。
pFtest(fe, pool)
## 
##  F test for individual effects
## 
## data:  inv ~ value
## F = 15.974, df1 = 9, df2 = 189, p-value < 2.2e-16
## alternative hypothesis: significant effects
  • \(F\)Fが15.97であり、これは第1自由度99、第2自由度189の\(F\)分布に従う。

  • \(p\)p-valueが非常に小さいので、帰無仮説は棄却される。

  • つまり「個別効果はある」と考えられる。

GLS

  • 個別効果\(\alpha_{i}\)を期待値0、分散\(\sigma_{\alpha}^{2}\)の確率変数とした変量効果モデルを考える。

\[ inv_{it} = \mu_{\alpha} + \alpha_{i} + \beta_{1} value_{it} + \epsilon_{it} \qquad (i=1,\ldots,10, \quad t = 1, \ldots, 20) \]

  • ただし、次のように仮定する。 \[ E(\alpha_{i}) = 0, \quad V(\alpha_{i}) = \sigma_{\alpha}^{2}, \quad E(\epsilon_{it}) = 0, \quad V(\epsilon_{it}) = \sigma_{\epsilon}^{2}, \quad Cov(\alpha_{i}, \epsilon_{it}) = 0 \]

  • また、\(\mu_{\alpha}\)は個別効果全体の平均を表す。

  • このモデルは、一般化最小2乗法(generalized least squares: GLS)によって推定できる。

  • 関数plm()でオプションをmodel = "random"と指定する。

re <- plm(inv ~ value, data = Grunfeld, model = "random")
summary(re)
## Oneway (individual) effect Random Effect Model 
##    (Swamy-Arora's transformation)
## 
## Call:
## plm(formula = inv ~ value, data = Grunfeld, model = "random")
## 
## Balanced Panel: n = 10, T = 20, N = 200
## 
## Effects:
##                   var std.dev share
## idiosyncratic 7472.57   86.44 0.556
## individual    5977.20   77.31 0.444
## theta: 0.7574
## 
## Residuals:
##     Min.  1st Qu.   Median  3rd Qu.     Max. 
## -392.040  -11.740    5.369   16.595  649.679 
## 
## Coefficients:
##               Estimate Std. Error z-value Pr(>|z|)    
## (Intercept) -34.135038  29.244485 -1.1672   0.2431    
## value         0.166494   0.013439 12.3886   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    2663000
## Residual Sum of Squares: 1500100
## R-Squared:      0.43666
## Adj. R-Squared: 0.43382
## Chisq: 153.478 on 1 DF, p-value: < 2.22e-16
  • Effects:の部分におけるvarの列でidiosyncraticの横の数値が\(\sigma_{\epsilon}^{2}\)の推定値、individualの横の数値が\(\sigma_{\alpha}^{2}\)の推定値を表す。

  • Coefficients:の部分におけるEstimateの列の(Intercept)の横の数値が\(\mu_{\alpha}\)の推定値、valueの横の数値が\(\beta_{1}\)の推定値を表す。

  • \(\beta_{1}\)の推定値は正に有意であり、LSDVによる推定値より小さい。

  • GLS推定では、\(\alpha_{i}\)と説明変数の間に相関があると推定量が一致性を失う。

    • 詳しくは第7回資料を参照。
  • よって、この相関があるかないかを確かめることは重要である。

  • 相関が0という帰無仮説を検定するための検定としてハウスマン検定がある。

  • この検定は、以下のようにLSDV推定の結果feとGLS推定の結果reの2つをインプットとして、phtest()関数を用いて行うことができる。

phtest(fe, re)
## 
##  Hausman Test
## 
## data:  inv ~ value
## chisq = 3.8188, df = 1, p-value = 0.05068
## alternative hypothesis: one model is inconsistent
  • \(p\)p-valueが0.05068なので、有意水準5%では帰無仮説は棄却されないが、10%では棄却される。

  • つまり、GLS推定には(やや弱い意味で)問題があるということになる。