Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rで計量経済学#6 パネルデータ分析
Search
TomoyaOzawa-DA
August 15, 2020
Education
0
4.8k
Rで計量経済学#6 パネルデータ分析
所属している研究会で扱った資料になります。
内容について間違いがある可能性もありますので、その際にはご連絡ください。
TomoyaOzawa-DA
August 15, 2020
Tweet
Share
More Decks by TomoyaOzawa-DA
See All by TomoyaOzawa-DA
Rで計量経済学#0 事前準備
tom01
0
220
Rで計量経済学#1 単回帰分析
tom01
0
430
Rで計量経済学#2 重回帰分析
tom01
0
180
Rで計量経済学#3 重回帰分析とバイアス
tom01
0
250
Rで計量経済学#4 操作変数法
tom01
0
1.4k
Rで計量経済学#5 プロビット・ロジットモデル
tom01
0
260
Other Decks in Education
See All in Education
Comezando coas redes
irocho
0
400
H5P-työkalut
matleenalaakso
4
36k
Ch2_-_Partie_1.pdf
bernhardsvt
0
120
SQL初級中級_トレーニング【株式会社ニジボックス】
nbkouhou
0
23k
Security, Privacy and Trust - Lecture 11 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
Human Perception and Cognition - Lecture 4 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
750
Ch2_-_Partie_2.pdf
bernhardsvt
0
110
JavaScript - Lecture 6 - Web Technologies (1019888BNR)
signer
PRO
0
2.5k
Informasi Program Coding Camp 2025 powered by DBS Foundation
codingcamp2025
0
120
Web 2.0 Patterns and Technologies - Lecture 8 - Web Technologies (1019888BNR)
signer
PRO
0
2.5k
AWS All Certが伝える 新AWS認定試験取得のコツ (Machine Learning Engineer - Associate)
nnydtmg
1
690
Chapitre_1_-__L_atmosphère_et_la_vie_-_Partie_1.pdf
bernhardsvt
0
230
Featured
See All Featured
A Tale of Four Properties
chriscoyier
157
23k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Embracing the Ebb and Flow
colly
84
4.5k
Designing for Performance
lara
604
68k
RailsConf 2023
tenderlove
29
940
BBQ
matthewcrist
85
9.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
GraphQLとの向き合い方2022年版
quramy
44
13k
Bash Introduction
62gerente
608
210k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Gamification - CAS2011
davidbonilla
80
5.1k
Transcript
R Lecture #6 Tomoya Ozawa パネルデータ分析 -経済主体の固有効果を考慮してみる-
2 Goal & Agenda 1.パネルデータの特性を理解する 2.パネルデータ分析の⼿法をRで実装出来るようになる 02 パネルデータ 分析の⼿法 01
パネルデータ とは? 03 Rでの実装 ※⼭本(2015)P. 180参照.
3 Goal & Agenda 1.パネルデータの特性を理解する 2.パネルデータ分析の⼿法をRで実装出来るようになる 02 パネルデータ 分析の⼿法 01
パネルデータ とは? 03 Rでの実装 ※⼭本(2015)P. 180参照.
データの種類:実は3種類 パネルデータはクロスセクションデータ×時系列データ. ⼀番情報量の多いデータになっています. 4 01 パネルデータとは? ※お兄さんスライド参考 1時点のデータ 複数時点のデータ 1つの変数
- 時系列データ ex. 株価データ 複数の変数 クロスセクションデータ ex. 2019年に調査された都道府県別の 統計データ パネルデータ ex. 2010年から毎年同じ⼈に⾏っている アンケートデータ
パネルデータの概観 パネルデータを扱う際には経済主体と観測期間をしっかり把握しておきましょう. 以下のような航空系統のデータの場合は… 5 01 パネルデータとは? 変数の名前 変数の内容 year 観測年(1997年〜2000年)
origin 出発地 destin 到着地 dist 当該路線の距離(単位:マイル) passen 1⽇あたりの平均乗客数 経済主体:路線(出発地〜到着地) 観測期間:1997年〜2000年 観測期間 経済主体
クロスセクションデータに時間情報が追加されるので,嬉しいこと盛り沢⼭です. 6 より厳密な推定 固有の要因を考慮可能 パネルデータの嬉しいところ ある特定の年代だけを分析しても, それ以外の年に同じことが ⾔えるかどうかはわからない. さらにサンプルサイズも増えるので良きです. 経済主体(個⼈や企業)の
固有の要因を考慮できれば, 賃⾦推定の時のような ⽋落変数バイアスに対応できそうですね. ・他には時間軸で⽐較できることも嬉しいところです.例えば政策評価(合併の評価など)に役⽴ちます. 来週以降に扱う予定です.DID分析といった因果推論に通じる話です. ・嬉しいことが多い反⾯,データを加⼯する必要があります.頑張りましょう. 01 パネルデータとは?
7 Goal & Agenda 1.パネルデータの特性を理解する 2.パネルデータ分析の⼿法をRで実装出来るようになる 02 パネルデータ 分析の⼿法 01
パネルデータ とは? 03 Rでの実装 ※⼭本(2015)P. 180参照.
8 02 パネルデータ分析の⼿法 パネルデータ分析は経済主体の固有効果を考慮できる点がポイントです. この固有効果の扱い⽅には2通りあります. この固有効果は時間⼀定の効果であることが重要になってきます. 固有効果と誤差項が相関しているかという仮定によって推定⽅法が異なります. パネルデータ分析 , =
+ ×, + + , ※ :経済主体, :時間, :経済主体の固有効果
パネルデータ分析には,固定効果モデルと変量効果モデルの2つがあります. 9 変量効果モデル 固定効果モデル パネルデータ分析 経済主体の固有効果と 誤差項が相関していないと 仮定する場合のモデル 経済主体の固有効果と 誤差項が相関していると
仮定する場合のモデル ・ハウスマン検定を⾏うことで,どちらのモデルが統計的に良いかどうかを判断することが可能です. 帰無仮説:固有効果と誤差項が独⽴(変量効果),対⽴仮説:固有効果と誤差項が独⽴ではない(固定効果)とします. つまり,ハウスマン検定を実施した際のP値によって帰無仮説が棄却されるかどうかを判断します. 02 パネルデータ分析の⼿法
変量効果モデル:推定⽅法 固有効果と誤差項をまとめて誤差項と捉えて推定しています 10 02 パネルデータ分析の⼿法 , = + ×, +
+ , = + ×, + , (, = + , ) 【単純なOLS推定ではない】 ・固有効果と誤差項をまとめて誤差項と捉えることで誤差項間で相関が⽣じていしまい, OLS推定ではバイアスがかかってしまいます. そこで,変量効果モデルでは被説明変数と説明変数に複雑な変換を加えて⼀般化最⼩⼆乗法で推定しています.
固定効果モデル:数式で捉える 固有効果と誤差項が相関すると仮定する固定効果モデル. 経済主体の期間平均との差分をとることで,固有効果を除いて推定しています. 11 02 パネルデータ分析の⼿法 , = + ×,
+ + , - = + × + + − ()より , − - = ×(, − ) + (, − ) = × / , + 0 , ・差分モデルという前期( − )のラグを取って固有効果を除く⼿法もあります. ・固有効果が時間不変の効果であるためにこのような操作が可能になります. ・固有効果もちゃんと計算されます.
固定効果モデルは以下のバイアスに対処することが出来ます. 12 逆の因果性 ⽋落変数バイアス 固定効果モデル:良いところ 経済主体の固有効果が 逆の因果性が⽣じる原因 となっている場合に有効です. データで観察しづらい 個⼈の能⼒といった影響は
固有効果として除くことが出来ます. ・⽋点としては,観察期間で⼀定の値をもつ変数の効果を測定することができません. 固有効果として認識されてしまい,説明変数から除かれてしまうからです.あとで実際に分析して確かめてみましょう. 02 パネルデータ分析の⼿法
13 Goal & Agenda 1.パネルデータの特性を理解する 2.パネルデータ分析の⼿法をRで実装出来るようになる 02 パネルデータ 分析の⼿法 01
パネルデータ とは? 03 Rでの実装 ※⼭本(2015)P. 180参照.
14 今⽇のTry 市場集中度が⾼いほど,当該路線上での市場⽀配⼒は⾼いはずなので,運賃は⾼まると考えられます. 市場集中度を⽰す値として,今回は各路線上でトップシェアを誇るエアラインの市場シェアを使って分析 していきます. 当該路線上で市場集中度が⾼いほど, 運賃は⾼くなる傾向にあるのでは?という仮説を検証してみます. 03 Rでの実装 ※
Wooldridge 『Introductory Econometrics -A modern Approach-』より
15 本⽇のデータ 本⽇のデータは airfare.xlsx というファイルになります. ▼データの詳細 ▼こんなデータのはず 出所 ・1997年〜2000年までのUS航空市場のデータ. ・『Introductory
Econometrics -A modern Approach-』 のサンプルデータ 変数の名前 変数の内容 year 観測年(1997年〜2000年) origin 出発地 destin 到着地 dist 当該路線の距離(単位:マイル) passen 1⽇あたりの平均乗客数 fare 平均⽚道運賃(単位:ドル) bmktshr 当該路線で最も⼤きいキャリアの市場シェア ID 路線番号 03 Rでの実装
データの把握:ヒストグラム作成 今回はggplotというライブラリを使⽤して, 被説明変数となる運賃についてヒストグラムを作成してみましょう. 仮説 ⽴て 収集 把握 モデル 推定 解釈
## いつもよりかっこいいグラフが描けるライブラリggplot2をインストール ## install.packages("ggplot2") library(ggplot2) #geom_histogramと指定することで、ヒストグラムを描画出来る# g_fare <- ggplot(data = df_air, aes(x = fare)) + geom_histogram() g_fare 16 ・ggplot2の使い⽅はこんな感じです.⾊々なグラフが描けるので,気になった⽅はググって⾒てください. グラフの名前 <- ggplot(data = データ名, aes(x=x軸にくる変数名, y=y軸にくる変数名) + グラフの種類 論⽂で使う場合はこっちのスタイルの⽅が良いかもです. g_fare <- g_fare + theme_classic()
データの加⼯:対数変換 運賃の分布は少し偏っているので対数変換してみましょう. 対数をとってあげると,分布の歪みが解消されます. 仮説 ⽴て 収集 把握 モデル 推定 解釈
17 # fareの対数をとった値を新しくln_fareという変数として追加する# df_air$ln_fare <- log(df_air$fare) ・⽂字通りlogという関数を使えば,対数に変換されます. ・ln_fareという変数のヒストグラムを描いてみて,分布がどのように変化したのか確認してみましょう! 分布の歪みが⼩さくなって,正規分布っぽい形状になっているはずです. ・経済理論から⾮線型の式が導かれた場合に,対数変換をしてあげれば,線形の式で推定することが出来ます.
【重要】対数の解釈 回帰モデル内の変数を対数に変換した場合,パラメータの解釈に⼀捻り必要です 18 ※⼭本(2015)P.45 03 Rでの実装 ・弾⼒性を図る際には,説明変数と被説明変数ともに対数をとります. この対数変換により,パラメータが弾⼒性を⽰します. Y lnY(⾃然対数)
X Xが1単位増えた時に Yがβ単位分変化する Xが1単位増えた時に Yが(β×100)%分変化する lnX (⾃然対数) Xが1%増えた時に Yが(β÷100)単位分変化する Xが1%増えた時に Yがβ%分変化する 被説明変数 説明変数
19 計量経済学モデル構築:OLS推定 まずはいつも通り重回帰分析で推定していきましょう! 結果はout_OLSという名前で保存しておいてください.結果はどうなりましたか? 仮説 ⽴て 収集 把握 モデル 推定
解釈 _ = + × + × + × + ・被説明変数が対数であることに注意し係数を解釈してください! ・OLS推定だと,各路線固有の要因(有名な観光地のある空港かどうかetc.)が考慮されていません. そのため,これから変量効果モデルと固定効果モデルで分析していきたいと思います.
20 計量経済学モデル構築:パネルデータ分析 路線固有の要因 をモデルに加えて分析していきましょう. 仮説 ⽴て 収集 把握 モデル 推定
解釈 ・変量効果モデルの場合,固有効果 と誤差項, に相関がないことを仮定します. ⼀⽅で,固定効果モデルの場合, と, に相関があるとして分析していきます. _, = + ×, + ×, + ×, + + ,
21 推定:パネルデータ分析の準備 パネルデータ分析では,plmパッケージを使⽤します. 分析に⼊る前に使⽤するデータがパネルデータであるとRに認識させましょう. 仮説 ⽴て 収集 把握 モデル 推定
解釈 # 必要なライブラリをインストールする# install.packages("plm") library(plm) # 観測主体がID, 観測期間がyearという変数のパネルデータですよ!と認識してもらう# df_panel <- pdata.frame(df_air, index = c('ID', 'year')) ・pdata.frameがパネルデータと認識してもらうコマンドになっています. index=c(観測主体,観測期間)の順に設定することに注意してください!
22 推定:変量効果モデル まずは変量効果モデルから推定してみましょう! 推定結果はOLS推定と同様にsummaryというコマンドで確認することができます. 仮説 ⽴て 収集 把握 モデル 推定
解釈 ・⼤体こんな感じです. plm(被説明変数 ~ 説明変数, data = データ名, model = "random") ・推定結果のBalanced Panel という部分を確認してください.nが観測主体の数,Tが観測期間を⽰しています. Balanced Panel: n = 1149, T = 4, N = 4596 # 変量効果モデルを推定.結果をout_randomに格納 # out_random <- plm(ln_fare ~ bmktshr+ dist + passen , data = df_panel, model = "random") summary(out_random)
23 推定:固定効果モデル 次に固定効果モデルを推定してみましょう! 仮説 ⽴て 収集 把握 モデル 推定 解釈
・固定効果の場合はmodelの部分でwithinと指定します. ・各路線において時間不変の値をとるdistが説明変数から除かれていることを確認してください! ・fixefというコマンドで各路線の固有効果を確認できます.今回の分析の場合,路線の数だけ出⼒されます. # 固定効果モデルを推定.結果をout_fixに格納 # out_fix <- plm(ln_fare ~ bmktshr+ dist + passen , data = df_panel, model = "within") summary(out_fix) fixef(out_fix)
24 解釈:ハウスマン検定 変量効果モデルと固定効果モデルのどちらを選択すれば良いのでしょうか? ハウスマン検定を⾏ってみましょう! 仮説 ⽴て 収集 把握 モデル 推定
解釈 # ハウスマン検定を実施する # phtest(out_fix, out_random) ・p値を参考にどちらの仮説を採択するのかを判断します. 今回はp値がかなり⼩さい値ですので,対⽴仮説が採択されます.つまり,選ばれたのは固定効果モデルです.
25 02 パネルデータ分析の⼿法 経済主体の固有効果に加えて, 観察時間ごとの時間効果も考慮して推定することが出来ます. 年ダミー(当該年であれば1を取るダミー変数)を説明変数に追加するようなイメージです. 下のモデルで観察期間が1997年〜2000年( ={1997, 1998, 1999,
2000})の場合は… 時間効果も考慮してみる , = ×, + + , + , + , + , ※2000年ダミーが含まれていないのは,多重共線性のためです. ⾃動的にモデルに含めたとしても除かれてしまいます.
26 推定:時間効果を考慮してみる 次に時間効果を考慮した固定効果モデルを推定してみましょう! 仮説 ⽴て 収集 把握 モデル 推定 解釈
・時間効果を考慮する場合には,effect= “twoways”を追加します. ・Stataだと年ダミーを作成して説明変数に追加しなくてはいけないので便利ですね. # 時間効果を考慮して推定.結果をout_fix_timeに格納 # out_fix_time <- plm(ln_fare ~ bmktshr+ dist + passen , data = df_panel, effect = "twoways", model = "within") summary(out_fix_time) fixef(out_fix_time)
解釈:推定結果の整理 パネルデータ分析の場合mtableだと動かないみたいです. 代わりに今回はstargazerを使ってみます. #パネルデータ分析の結果はmtableだと動かないみたい。# install.packages("stargazer") library(stargazer) stargazer(out_OLS, out_fix, out_random, out_fix_time,
type="text") 27 ・こんな感じで,textファイル形式で出⼒することができます. f <-stargazer(out_OLS, out_fix, out_random, out_fix_time, type="text") write(f, "panel.txt") 仮説 ⽴て 収集 把握 モデル 推定 解釈