課題説明

「第8回 パネルデータ分析3」での静学的パネルデータ分析を、説明変数としてvalueとcapitalを用いたモデルについて行ってください。

以下の「***」から下をコピーし、(  )内から適切な語句を選び、完成した文章をインラインにコピー・ペーストして提出してください。また、末尾にRの出力結果もコピー・ペーストして提出してください。

***

  1. Pooled OLS推定の結果、capitalの推定値は(正・負)で有意で(ある・ない)。

  2. LSDV推定の結果、平均からの相対的な効果を見ると、企業 i =(1・2・3・4・5・6・7・8・9・10)は有意な正の個別効果が、企業 i =(1・2・3・4・5・6・7・8・9・10)は有意な負の個別効果がある。

  3. F検定の結果、「全ての個別効果が同じ」という帰無仮説は、有意水準1%で棄却(される・されない)ので、個別効果は(ある・ない)と考えられる。

  4. GLS推定の結果、valueとcapitalの係数の推定値はLSDV推定の結果と(大きく異なる・あまり変わらない)。

  5. ハウスマン検定の結果、「個別効果と説明変数の間の相関が0」という帰無仮説は、有意水準10%で棄却(される・されない)ので、GLS推定には問題が(ない・ある)と考えられる。

===== Rの出力結果 =====

解答

  1. Pooled OLS推定の結果、capitalの推定値は()で有意で(ある)。

  2. LSDV推定の結果、平均からの相対的な効果を見ると、企業 i =(2・4・6・10)は有意な正の個別効果が、企業 i =(3・5・9)は有意な負の個別効果がある。

  3. F検定の結果、「全ての個別効果が同じ」という帰無仮説は、有意水準1%で棄却(される)ので、個別効果は(ある)と考えられる。

  4. GLS推定の結果、valueとcapitalの係数の推定値はLSDV推定の結果と(あまり変わらない)。

  5. ハウスマン検定の結果、「個別効果と説明変数の間の相関が0」という帰無仮説は、有意水準10%で棄却(されない)ので、GLS推定には問題が(ない)と考えられる。

===== Rの出力結果 =====

> ## パッケージからデータを読み込む
> 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

> ## pooled OLS
> pool <- plm(inv ~ value + capital, data = Grunfeld, model = "pooling")

> summary(pool)
Pooling Model

Call:
plm(formula = inv ~ value + capital, data = Grunfeld, model = "pooling")

Balanced Panel: n = 10, T = 20, N = 200

Residuals:
     Min.   1st Qu.    Median   3rd Qu.      Max. 
-291.6757  -30.0137    5.3033   34.8293  369.4464 

Coefficients:
               Estimate  Std. Error t-value  Pr(>|t|)    
(Intercept) -42.7143694   9.5116760 -4.4907 1.207e-05 ***
value         0.1155622   0.0058357 19.8026 < 2.2e-16 ***
capital       0.2306785   0.0254758  9.0548 < 2.2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Total Sum of Squares:    9359900
Residual Sum of Squares: 1755900
R-Squared:      0.81241
Adj. R-Squared: 0.8105
F-statistic: 426.576 on 2 and 197 DF, p-value: < 2.22e-16

> ## LSDV
> fe <- plm(inv ~ value + capital, data = Grunfeld, model = "within")

> summary(fe)
Oneway (individual) effect Within Model

Call:
plm(formula = inv ~ value + capital, data = Grunfeld, model = "within")

Balanced Panel: n = 10, T = 20, N = 200

Residuals:
      Min.    1st Qu.     Median    3rd Qu.       Max. 
-184.00857  -17.64316    0.56337   19.19222  250.70974 

Coefficients:
        Estimate Std. Error t-value  Pr(>|t|)    
value   0.110124   0.011857  9.2879 < 2.2e-16 ***
capital 0.310065   0.017355 17.8666 < 2.2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Total Sum of Squares:    2244400
Residual Sum of Squares: 523480
R-Squared:      0.76676
Adj. R-Squared: 0.75311
F-statistic: 309.014 on 2 and 188 DF, p-value: < 2.22e-16

> # 個別効果の推定値
> mu <- fixef(fe)

> summary(mu)
    Estimate Std. Error t-value  Pr(>|t|)    
1   -70.2967    49.7080 -1.4142   0.15896    
2   101.9058    24.9383  4.0863 6.485e-05 ***
3  -235.5718    24.4316 -9.6421 < 2.2e-16 ***
4   -27.8093    14.0778 -1.9754   0.04969 *  
5  -114.6168    14.1654 -8.0913 7.141e-14 ***
6   -23.1613    12.6687 -1.8282   0.06910 .  
7   -66.5535    12.8430 -5.1821 5.629e-07 ***
8   -57.5457    13.9931 -4.1124 5.848e-05 ***
9   -87.2223    12.8919 -6.7657 1.635e-10 ***
10   -6.5678    11.8269 -0.5553   0.57933    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

> mean(mu) # 個別効果の平均
[1] -58.74394

> # 個別効果のその平均からの乖離
> mu2 <- fixef(fe, type = "dmean")

> summary(mu2)
    Estimate Std. Error t-value  Pr(>|t|)    
1   -11.5528    49.7080 -0.2324 0.8164700    
2   160.6498    24.9383  6.4419 9.627e-10 ***
3  -176.8279    24.4316 -7.2377 1.130e-11 ***
4    30.9346    14.0778  2.1974 0.0292129 *  
5   -55.8729    14.1654 -3.9443 0.0001129 ***
6    35.5826    12.6687  2.8087 0.0054998 ** 
7    -7.8095    12.8430 -0.6081 0.5438694    
8     1.1983    13.9931  0.0856 0.9318489    
9   -28.4783    12.8919 -2.2090 0.0283821 *  
10   52.1761    11.8269  4.4116 1.725e-05 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

> # 個別効果があるかどうかのF検定
> pFtest(fe, pool)

    F test for individual effects

data:  inv ~ value + capital
F = 49.177, df1 = 9, df2 = 188, p-value < 2.2e-16
alternative hypothesis: significant effects


> ## GLS 
> re <- plm(inv ~ value + capital, data = Grunfeld, model = "random")

> summary(re)
Oneway (individual) effect Random Effect Model 
   (Swamy-Arora's transformation)

Call:
plm(formula = inv ~ value + capital, data = Grunfeld, model = "random")

Balanced Panel: n = 10, T = 20, N = 200

Effects:
                  var std.dev share
idiosyncratic 2784.46   52.77 0.282
individual    7089.80   84.20 0.718
theta: 0.8612

Residuals:
     Min.   1st Qu.    Median   3rd Qu.      Max. 
-177.6063  -19.7350    4.6851   19.5105  252.8743 

Coefficients:
              Estimate Std. Error z-value Pr(>|z|)    
(Intercept) -57.834415  28.898935 -2.0013  0.04536 *  
value         0.109781   0.010493 10.4627  < 2e-16 ***
capital       0.308113   0.017180 17.9339  < 2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Total Sum of Squares:    2381400
Residual Sum of Squares: 548900
R-Squared:      0.7695
Adj. R-Squared: 0.76716
Chisq: 657.674 on 2 DF, p-value: < 2.22e-16

> # ハウスマン検定
> phtest(fe, re)

    Hausman Test

data:  inv ~ value + capital
chisq = 2.3304, df = 2, p-value = 0.3119
alternative hypothesis: one model is inconsistent

解説

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} + \beta_{2} capital_{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\)\(\beta_2\)を推定する。

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

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

pool <- plm(inv ~ value + capital, data = Grunfeld, model = "pooling")
summary(pool)
## Pooling Model
## 
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, model = "pooling")
## 
## Balanced Panel: n = 10, T = 20, N = 200
## 
## Residuals:
##      Min.   1st Qu.    Median   3rd Qu.      Max. 
## -291.6757  -30.0137    5.3033   34.8293  369.4464 
## 
## Coefficients:
##                Estimate  Std. Error t-value  Pr(>|t|)    
## (Intercept) -42.7143694   9.5116760 -4.4907 1.207e-05 ***
## value         0.1155622   0.0058357 19.8026 < 2.2e-16 ***
## capital       0.2306785   0.0254758  9.0548 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    9359900
## Residual Sum of Squares: 1755900
## R-Squared:      0.81241
## Adj. R-Squared: 0.8105
## F-statistic: 426.576 on 2 and 197 DF, p-value: < 2.22e-16
  • valuecapitalの係数\(\beta_{1}\)\(\beta_{2}\)の推定値Estimateはどちらも正で、\(p\)Pr(>|t|)はほとんど0であることから、企業価値valueと有形固定資産capitalが大きいほど総投資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 + capital, data = Grunfeld, model = "within")
summary(fe)
## Oneway (individual) effect Within Model
## 
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, model = "within")
## 
## Balanced Panel: n = 10, T = 20, N = 200
## 
## Residuals:
##       Min.    1st Qu.     Median    3rd Qu.       Max. 
## -184.00857  -17.64316    0.56337   19.19222  250.70974 
## 
## Coefficients:
##         Estimate Std. Error t-value  Pr(>|t|)    
## value   0.110124   0.011857  9.2879 < 2.2e-16 ***
## capital 0.310065   0.017355 17.8666 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    2244400
## Residual Sum of Squares: 523480
## R-Squared:      0.76676
## Adj. R-Squared: 0.75311
## F-statistic: 309.014 on 2 and 188 DF, p-value: < 2.22e-16
  • 上記のpooled OLSの推定結果と同様に、係数\(\beta_{1}\)\(\beta_{2}\)の推定値はどちらも有意に正である。

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

mu <- fixef(fe)
summary(mu)
##     Estimate Std. Error t-value  Pr(>|t|)    
## 1   -70.2967    49.7080 -1.4142   0.15896    
## 2   101.9058    24.9383  4.0863 6.485e-05 ***
## 3  -235.5718    24.4316 -9.6421 < 2.2e-16 ***
## 4   -27.8093    14.0778 -1.9754   0.04969 *  
## 5  -114.6168    14.1654 -8.0913 7.141e-14 ***
## 6   -23.1613    12.6687 -1.8282   0.06910 .  
## 7   -66.5535    12.8430 -5.1821 5.629e-07 ***
## 8   -57.5457    13.9931 -4.1124 5.848e-05 ***
## 9   -87.2223    12.8919 -6.7657 1.635e-10 ***
## 10   -6.5678    11.8269 -0.5553   0.57933    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • 1番左の番号は個体(企業)\(i\)を表す。

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

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

  • 有意水準5%で企業\(i = 2, 3, 4, 5, 7, 8, 9\)で有意な個別効果があり、企業\(i=2\)以外は負となっている。

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

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

    • 個別効果\(\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   -11.5528    49.7080 -0.2324 0.8164700    
## 2   160.6498    24.9383  6.4419 9.627e-10 ***
## 3  -176.8279    24.4316 -7.2377 1.130e-11 ***
## 4    30.9346    14.0778  2.1974 0.0292129 *  
## 5   -55.8729    14.1654 -3.9443 0.0001129 ***
## 6    35.5826    12.6687  2.8087 0.0054998 ** 
## 7    -7.8095    12.8430 -0.6081 0.5438694    
## 8     1.1983    13.9931  0.0856 0.9318489    
## 9   -28.4783    12.8919 -2.2090 0.0283821 *  
## 10   52.1761    11.8269  4.4116 1.725e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
  • ここでの\(t\)t-valueは、乖離が0かどうか、すなわち、それぞれの個別効果が個別効果全体の平均から異なるかどうかを検定していることに注意する必要がある。

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

  • ここで、個別効果があるかどうかの\(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 + capital
## F = 49.177, df1 = 9, df2 = 188, p-value < 2.2e-16
## alternative hypothesis: significant effects
  • \(F\)Fが49.18であり、これは第1自由度9、第2自由度188の\(F\)分布に従う。

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

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

GLS

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

\[ inv_{it} = \mu_{\alpha} + \alpha_{i} + \beta_{1} value_{it} + \beta_{2} capital_{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 + capital, data = Grunfeld, model = "random")
summary(re)
## Oneway (individual) effect Random Effect Model 
##    (Swamy-Arora's transformation)
## 
## Call:
## plm(formula = inv ~ value + capital, data = Grunfeld, model = "random")
## 
## Balanced Panel: n = 10, T = 20, N = 200
## 
## Effects:
##                   var std.dev share
## idiosyncratic 2784.46   52.77 0.282
## individual    7089.80   84.20 0.718
## theta: 0.8612
## 
## Residuals:
##      Min.   1st Qu.    Median   3rd Qu.      Max. 
## -177.6063  -19.7350    4.6851   19.5105  252.8743 
## 
## Coefficients:
##               Estimate Std. Error z-value Pr(>|z|)    
## (Intercept) -57.834415  28.898935 -2.0013  0.04536 *  
## value         0.109781   0.010493 10.4627  < 2e-16 ***
## capital       0.308113   0.017180 17.9339  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Total Sum of Squares:    2381400
## Residual Sum of Squares: 548900
## R-Squared:      0.7695
## Adj. R-Squared: 0.76716
## Chisq: 657.674 on 2 DF, p-value: < 2.22e-16
  • Effects:の部分におけるvarの列でidiosyncraticの横の数値が\(\sigma_{\epsilon}^{2}\)の推定値、individualの横の数値が\(\sigma_{\alpha}^{2}\)の推定値を表す。

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

  • \(\beta_{1}\)\(\beta_{2}\)の推定値はどちらも正に有意であり、LSDVによる推定値とほとんど変わらない

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

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

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

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

phtest(fe, re)
## 
##  Hausman Test
## 
## data:  inv ~ value + capital
## chisq = 2.3304, df = 2, p-value = 0.3119
## alternative hypothesis: one model is inconsistent
  • \(p\)p-valueが0.3119なので、帰無仮説は棄却されない

  • つまり、GLS推定は問題ないということになる。