37
DYNAMIC PANEL WITH R SHOTA YASUI 2014/6/14 TOKYO.R

Dynamic panel in tokyo r

Embed Size (px)

Citation preview

Page 1: Dynamic panel in tokyo r

DYNAMIC PANEL WITH R

SHOTA YASUI 2014/6/14 TOKYO.R

Page 2: Dynamic panel in tokyo r

WHO AM I?

名前:安井翔太 / Shota Salmon Yasui Twitter:@housecat442 お仕事:広告×データ分析、ときどきアドテク。

<けーれき> 日本のド文系経済学部

アメリカで計量経済学1年

ノルウェーで経済学修士取得

SNF研究所でデータ分析(環境税作成)

Page 3: Dynamic panel in tokyo r

WTF IS DYNAMIC PANEL???

パネルデータの線形回帰に自己回帰項を突っ込もうという話。 今日はたったそれだけの話。

■アジェンダ

1.パネルデータ分析のおさらい 2.動学的パネルにしたときの問題点

3.動学的パネルの推定 4.企業の雇用モデルへの応用

Page 4: Dynamic panel in tokyo r

CROSS SECTION

観測対象_1

観測対象_2

観測対象_3

観測対象_N

データを取得する対象がN存在している。

全ての観測対象が同様のモデルに当てはまると仮定する。 例)

y=増加体重

x=エサの増加量

β0とβ1が全ての観測対象が同様に持っているパラメーターと仮定出来る場合に有効。

y!�!! + !!!! + !! !(! = 1,2,… ,!)

Page 5: Dynamic panel in tokyo r

ある対象について期間1〜Tの間観測する。 エサの増加と体重の増加を同一対象からT回観測する。 y=体重増加量 x=エサ増加量 期間内でパラメーターが大きく変化しないと仮定出来るのであれば適正なモデルと言える。

期間_1 期間_2 期間_T

TIMESERIES

y!�!! + !!!! + !! !(! = 1,2,… ,!)

Page 6: Dynamic panel in tokyo r

PANEL

観測対象_1

観測対象_2

観測対象_3

観測対象_N

期間_1 期間_2 期間_T 期間_3

→N人/匹の同一個体からT期間に渡ってデータを取得する。

Page 7: Dynamic panel in tokyo r

PANEL

y!!�!! + !!!!! + !! + !!! !(! = 1,2,… ,!)(! = 1,2,… ,!) 時間でも観測対象でもパラメーターが変わらない場合同一のモデルで扱う事が出来る。 Unobservable specific effect とか Individual specific effectとか固定効果とかって呼ばれるλがモデルに入ってくる。

・3つの推定方法 Pooled corss section(iとtでダミー変数を入れる方法。今回はパス)

Random effect

Fixed effect (First Differenct)

Page 8: Dynamic panel in tokyo r

WHY NOT OLS?

結論:推定結果にバイアスが掛かってしまうから。

Page 9: Dynamic panel in tokyo r

WHY NOT OLS? 極例:こんな事だってあり得るかも? Individual specific effect をどーにかしないといけない。

Page 10: Dynamic panel in tokyo r

FIXED EFFECT

固定効果モデル( 前提:cor(λ,x) ≠ 0 ) 個体内での平均と差分とってλを消しちゃえば良いじゃんという発想。

時間変化しない変数をモデルに入れている場合はそれも消えてしまうので、その効果が推定出来ない。 →ダミー変数とか、教育年数の様な時間であまり変化しないデータは良く消える。

個体間でも時間でも変動しないので消える。

y!" − !!� !! − !! + !! !!" − !! + !! − !! + !!" !

同じ個体内では時間変動しないので消える。

Page 11: Dynamic panel in tokyo r

RANDOM EFFECT

変動効果モデル( 前提:cor(λ,x) = 0 ) 定数項が入っていればλは平均が0となる。

このモデルをOLSで推定するとλを通して相関するので、

となる。よって自己相関の問題が起きてしまう。

→一般化最小二乗法で推定。

y!"�!! + !!!!" + !!" ! !! + !!" = !!" !

!"## !!" , !!"!! ≠ 0

Page 12: Dynamic panel in tokyo r

PLM PACKAGE こんなデータを用意

t in T

t in T

i in N

観測値

i =

1 i =

2

Page 13: Dynamic panel in tokyo r

PLM PACKAGE

library(plm) #データ読み込んで data <- read.csv(“Panel for R.csv”) #pdata.frameというplm用のデータフレームに変換 pdata <- pdata.frame(data, index = c("id", "year"), drop.index = TRUE, row.names = TRUE) preg <- plm(Y ~ X, data = pdata, model = "random") #サマリーで結果表示 summary(preg)

iとtの変数を指定

Fixed effect なら”within” Random effectなら”random” OLSなら”pooling”

Page 14: Dynamic panel in tokyo r

余談

これらの分析方法はパネルデータ以外にも応用する事が可能。 例)家族ごとの効果を取り除く 双子のデータの差分を取って教育の効果を検証とかが有名。 “Estimates of the Economic Return to Schooling from a New Sample of Twins.” By ORLl-lY ASHENFELTER AND ALAN KRUEoER

Page 15: Dynamic panel in tokyo r

本題

Page 16: Dynamic panel in tokyo r

I NEED DYNAMICS

自己回帰させて動学的なモデルにしたい。

!!"�!! + !!!!"!! + !! + !!"

!!"�!! + !! !! + !!!!"!! + !! + !!"!! + !! + !!"

λを通してy_it-2がλと相関してしまう。

Random Effectの前提が成り立たない。 OLSの推定もbiasedになってしまう。

ならFixed Effectで推定すれば良いじゃん

Page 17: Dynamic panel in tokyo r

FIXED EFFECT WITH DYNAMICS

結論言うとバイアスされちゃう

βについているよけいな部分が0にならない。

分母の分散は0にならないので共分散を見てみる。

plim!→!

!"# !!" − !! , !!"!! − !!!"# !!" − !! = ! + !"# !!"!! − !! , !!" − !!

!"# !!"!! − !!

Page 18: Dynamic panel in tokyo r

ANDERSON HSIAO ESTIMATOR

操作変数で解決しようという最初のアプローチ

plim!→!

!"# !!" − !! , !!"!! − !!!"# !!" − !! = ! + !"# !!"!! − !! , !!" − !!

!"# !!"!! − !!

こいつが戦犯

!!" − !! � !! − !! + !!" !!"!! − !! + !! − !! + !!" − !!

つまりここの相関を どうにかしたい。

操作変数(Z)を導入してこいつと誤差項の相関を消す。

Corr !!"!! − !! ,!!" ≠ 0 Corr !!" − !! ,!!" = 0

Page 19: Dynamic panel in tokyo r

INSTRUMENTAL VARIABLE

操作変数のイメージ(簡単なので2SLSの説明で。) XとYが同時に決定されているのでXとuが相関してる場合。

Xと相関してるけれども、uとは相関してない変数Zを持ってくる

このモデルでXの予測値を計算すると、uと相関している部分がeに押し込まれて切り捨てられる。 これを元のモデルのXの部分に代入すれば同時決定の問題が消える。

Y = a + bX + u

X = c + dZ + e

Page 20: Dynamic panel in tokyo r

ANDERSON HSIAO ESTIMATOR

Zとして使えそうなのは。Y_it-2

!!"!! = !! + !!!!"!! + !! + !!"!!

Corr !!"!! − !! ,!!"!! ≠ 0 Corr !!" − !! ,!!"!! = 0

自己回帰はしてる。(してないなら動学的なモデルいらない)

2期前のyが今期の誤差項と相関してるか?

二期の自己相関があるとここが今期の誤差項と相関してしまう。

Page 21: Dynamic panel in tokyo r

TAKE FIRST DIFFERENCE

平均との差分よりは前期との差分を取るケースが多い 2期前のyを操作変数として投入

結果としてこんな推定が得られる。

!!" − yit!! � !! − !! + !!" !!"!! − yit!! + !! − !! + !!" − !!"!!

Corr !!"!! − !!"!! ,!!"!! ≠ 0 Corr !!" − !!"!!! ,!!"!! = 0

!!" =!!"!! !!" − !!"!!!

!!!!!!!

!!"!! !!"!! − !!"!!!!!!

!!!!

Page 22: Dynamic panel in tokyo r

ANDERSON HSIAO ESTIMATOR

差分を操作変数として投入しようというアプローチ

2期前と3期前のyの差分を操作変数として利用

結果としてこんな推定がされる。

!!" − yit!! � !! − !! + !!" !!"!! − yit!! + !! − !! + !!" − !!"!!

Corr !!"!! − !!"!! , !!"!! − !!"!! ≠ 0 Corr !!" − !!"!!! , !!"!! − !!"!! = 0

!!"(!) =!!"!! − !!"!! !!" − !!"!!!

!!!!!!!

!!"!! − !!"!! !!"!! − !!"!!!!!!

!!!!

Page 23: Dynamic panel in tokyo r

THEY ARE SUCK

差分を取った操作変数を用いる方式は、他の説明変数をモデルに入れると推定値の分散が大きくなってしまう。 レベルの操作変数の場合は自己回帰項の推定値が1に近い場合には大きなバイアスが掛かってしまう事がモンテカルロシミュレーションから解っている。 →だめじゃん・・・ と言う事でGeneralized Method of Momentを利用した推定方法が出てくる。 →Arellano Bond GMM estimator

Page 24: Dynamic panel in tokyo r

ARELLANO BOND GMM ESITMATOR

操作変数増やしまくれば、精度上がるじゃんというアプローチ 別に何も操作変数を二期前に限定しなくてももっと使える。

ただ、数を増やしてパラメーターよりも操作変数の数が多い状態になると、解析的にパラメーターを求められなくなる。

こういった状況化で、最小化されるとパラメーターが上手く求まる様なコスト関数を定義して解くのがGMM

Corr !!" − !!"!!! ,!!"!! = 0 Corr !!" − !!"!!! ,!!"!! = 0 Corr !!" − !!"!!! ,!!"!! = 0 Corr !!" − !!"!!! ,!!"!! = 0

Page 25: Dynamic panel in tokyo r

GMM

操作変数毎に満たさないといけないモーメント条件が発生し、 期間tが増えるごとに使える操作変数の量は指数的に増える。

Page 26: Dynamic panel in tokyo r

MOMENT CONDITION

さっきのモーメント条件はこんな感じに書ける。

Page 27: Dynamic panel in tokyo r

MINIMIZATION

こんなコスト関数を定義して最小化 βについて解くと二番目の様な式になる。

Page 28: Dynamic panel in tokyo r

WTF IS “W”

Optimal weighting matrixとかいうもの Wの中身次第で推定結果が幾らでも変わってしまう。 サンプルモーメントの共分散行列の逆行列が入る。 →直感的な意味合いとしては、「より小さい分散を持つモーメント条件、つまりはより正確な情報を持つモーメント条件により重みがつく様になる。」・・・らしい。 けど共分散行列自体を求めるのにβが必要になってしまう。 →取り敢えず単位行列とかを代入してβを推定して、そこからWを計算するという方法を用いる。

Page 29: Dynamic panel in tokyo r

IMAGE Wが必要

W βが必要

取り敢えず単位行列入れちゃう

相互依存してて解けない

Wを返す

W β推定

求まったWを使ってもう1回βを推定

Page 30: Dynamic panel in tokyo r

NOTIFICATION

AB GMMには幾つか注意点がある。 1.  自己回帰以外の説明変数

•  入れてもおk。ただ、ちゃんと外生的である事。

2.  操作変数入れ過ぎのケース •  Tが大きくなると操作変数が指数的に増える。 •  オーバーフィッティングしてパラメーターにバイアスが掛かる •  Wの推定精度が落ちて、パラメーターの標準偏差に下方バイアスが掛か

3.  操作変数の条件が満たされているか? •  Overidentification-testで検定する。(sargan-test)

4.  誤差項の自己回帰が無いという仮定を置く必要がある。 •  置かないと操作変数の仮定がそもそも成り立たない。

Page 31: Dynamic panel in tokyo r

AN APPLICATION TO EMPLOYMENT EQUATION

企業の雇用活動を説明したい。 (data("EmplUK", package = "plm”)) 企業が自由に追加コスト無しで雇用数を調整出来る場合 この辺の変数で大体説明される。

賃金 資本 業界

トレンド マクロトレンド

ただ実際には雇用するにも解雇するにもコストが掛かる。 よって、実際の動きはこれらの変数を加味して雇用を調整するという感じになる。

雇用

賃金 資本 業界

トレンド マクロトレンド

雇用 過去の雇用

Page 32: Dynamic panel in tokyo r

AN APPLICATION TO EMPLOYMENT EQUATION

雇用モデル 今年のある企業の雇用数は、「賃金・資本量・業種自体への需要・経済全体でのトレンド」に影響される、というアイデアに基づいているモデル。 「賃金が上がれば雇用が減り、

資本が増えれば雇用が増え、 業種の生産高が増えれば雇用が増える。」

!!" = !!!!"!! + !!!!"!! + !!!!" + !!!!"!! + !!!!" + !!!!!" + !!!!!"!! + !! + !! + !!"

!!":!��!�!����"���������!!!":��!�!����� �!!!!":��!�!���������������!!!!":��!��������!�����#���!!!: !��� ���

Some Tests of Specification for Panel Data: Monte Carlo Evidence and an Aplication to Employment EquationsのTable4(b)と同じ推定。

Page 33: Dynamic panel in tokyo r

#Table4 column(b) emp.gmm.b <- pgmm(log(emp)~lag(log(emp), 1:2)+lag(log(wage), 0:1)+log(capital)+lag(log(output), 0:1)

|lag(log(emp), 2:99),EmplUK,effect="twoways",model="twosteps") summary(emp.gmm.b)

Page 34: Dynamic panel in tokyo r

AN APPLICATION TO EMPLOYMENT EQUATION

賃金と資本が同時決定になっていると考えられる。 →操作変数で解決。

賃金 資本 業界

トレンド マクロトレンド

雇用 過去の雇用

Page 35: Dynamic panel in tokyo r

#Table4 column(c) 賃金・資本が同時決定になっていると考えられるケース こっちの方が適正 emp.gmm.c <- pgmm(log(emp)~lag(log(emp), 1:2)+lag(log(wage), 0:1)+log(capital)+lag(log(output), 0:1) |lag(log(emp), 2:99) + lag(log(wage),2:99) + lag(log(capital),2:99) ,EmplUK,effect="twoways",model="twosteps") summary(emp.gmm.c)

Page 36: Dynamic panel in tokyo r

まとめとか補足

ブログに丸投げ! http://www.housecat442.com/

Page 37: Dynamic panel in tokyo r

おしまい!