Rによる計量分析:データ解析と可視化 - 回帰分析の理解 ·...

55
R による計量分析:データ解析と可視化 回帰分析の理解 伊藤 岳 富山大学 経済学部 2017 年度後期 Email: [email protected] January 15, 2018 伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 1 / 46

Transcript of Rによる計量分析:データ解析と可視化 - 回帰分析の理解 ·...

Page 1: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rによる計量分析:データ解析と可視化回帰分析の理解

伊藤 岳

富山大学 経済学部 2017 年度後期

Email: [email protected]

January 15, 2018

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 1 / 46

Page 2: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Agenda

1 線形回帰分析

2 回帰分析の解釈

3 回帰係数の検定

4 回帰分析の前提

5 内生変数とバイアス

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 2 / 46

Page 3: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

線形回帰分析

Page 4: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

確認:従属変数と独立変数

▶ 従属変数 (dependent variable) y: 説明される変数 (結果)▶ 応答変数,被説明変数,結果変数

▶ 独立変数 (independent variable) x: 説明する変数 (原因)▶ 説明変数,予測変数

▶ コントロール (調整/統制) 変数▶ 注目する独立変数以外で,結果に影響を与える変数▶ 統計学的/数学的には単に x

▶ 従属変数と独立変数は,分析者が (なんらかの理論的根拠に基づき) 想定・仮定する

▶ 「賃金 (従属変数 y) を教育年数 (独立変数 x) に回帰する」▶ 回帰分析のみによって,因果関係を示すことができる訳ではない

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 3 / 46

Page 5: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰式と誤差項

yi = xiβ + ϵi (1)= β1xi1 + · · · + βkxik + ϵi, for i = 1, . . . , n,

▶ 回帰係数 βk: 独立変数と従属変数の関係を示す▶ 第一種過誤・第二種過誤の β と混同しないように

▶ (予測) 誤差項 (error term): ϵi = yi − yi

▶ 従属変数の変化は,独立変数の変化によって完全に説明できる訳ではない▶ 観察不可能な (モデルに取り込まれていない)「偶然」のような変数の影響も受ける

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 4 / 46

Page 6: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の記法

線形回帰モデルの数式表現

▶ 線形回帰モデルは,次のように表現できる

yi = xiβ + ϵi (2)= β1xi1 + · · · + βkxik + ϵi, for i = 1, . . . , n,

▶ また,次のようにも表現できる

yi ∼ N (xiβ, σ2), for i = 1, . . . , n. (3)

▶ あるいは,y ∼ N (xβ, σ2I), (4)

where I is an n × n identity matrix (単位行列).

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 5 / 46

Page 7: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の記法

x

y

o

y = β0 + β1x

1 2

β0

β1

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 6 / 46

Page 8: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の記法

x

y

o

y = β0 + β1x

yi

yi

ϵi

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 7 / 46

Page 9: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

推定量と推定値

▶ 推定量 (estimator): 推定の結果を,標本 {(yi, xi) : i = 1, . . . , n}の関数として表現したもの

▶ OLS推定量 β1 =∑n

i=1(xi − xn)(yi − yn)∑n

i=1(xi − xn)2 (次スライド)

▶ 推定値 (estimate): (推定量に) 実際に標本を代入して計算した数値のこと

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 8 / 46

Page 10: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

最小二乗法

▶ どのようにして (上の図の) 直線を引けば (回帰直線を推定すれば) よい?▶ 最小二乗法 (ordinary least squares, OLS): 予測誤差 (残差 residual) の平方和

(二乗の和) を最小化することで,事で,観測値と予測値のズレを最小化する方法

▶ 予測誤差 eは観測値 (点) y と予測値 (直線) yのズレなので,そのズレが最も小さくなる回帰直線を見つける

▶ 平均二乗誤差 (mean squared error, MSE):

MSE = 1n

(e21, . . . , e2

n) = 1n

n∑i=1

(yi − yi)2

▶ 以下は単回帰を想定した説明 (重回帰でも発想は同じ)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 9 / 46

Page 11: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

最小二乗法▶ 回帰式 yi = β0 + β1xi + ϵi を考える.予測誤差 ei について,

1n

e2i = 1

n(yi − yi)2 = 1

n(yi − β0 − β1xi)2 (5)

1n

n∑i=1

e2i = 1

n

n∑i=1

(yi − β0 − β1xi)2 (6)

▶ これを最小化する回帰係数の値を,最小二乗推定量 (OLS推定量) と呼ぶ▶ MSEを最小化するには,回帰係数で偏微分して「= 0」と置いた連立方程式を解けばよい (最適化の 1階条件)

∂MSE∂β0

= − 2n

n∑i=1

(yi − β0 − β1xi) = 0 (7)

∂MSE∂β1

= − 2n

n∑i=1

xi(yi − β0 − β1xi) = 0 (8)

▶ この連立方程式を解けば,OLS推定量が得られるβ0 = yn − β1xn (9)

β1 =∑n

i=1(xi − xn)(yi − yn)∑n

i=1(xi − xn)2 (10)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 10 / 46

Page 12: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

最小二乗法

▶ 行列を使えば,OLS推定量は β = (x⊤x)−1x⊤yと書ける▶ 重回帰分析の場合はこうした行列・ベクトルを用いた表記が一般的

▶ OLS推定量と相関係数

▶ β1 =∑n

i=1(xi − xn)(yi − yn)∑n

i=1(xi − xn)2

▶ rxy =∑n

i=1(xi − xn)(yi − yn)√∑n

i=1(xi − xn)2√∑n

i=1(yi − yn)2

▶ 違いは分母:独立変数の分散 (回帰係数) か両者の標準偏差 (相関係数) か▶ 「回帰分析のみで実証できること」は因果関係ではない (とは限らない)

▶ 回帰係数にせよ相関係数にせよ,2つの変数の「変化 (variation) の関係」を見るもの

▶ 「変化の関係」をみるのだから,両者に十分な変化がなければならない!▶ 副読本森田本の例:市区町村の失業者数が,1つだけ 500でそれ以外は 1,000の場合?

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 11 / 46

Page 13: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の解釈

Page 14: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰直線の「当てはまり」具合▶ 決定係数 R2:観察された従属変数の全変動 (

∑ni=1(yi − y)2) のうち,何

%が予測値の変動 (回帰変動∑n

i=1(yi − y)2) で説明できるかを示す値

R2 =∑n

i=1(yi − y)2∑ni=1(yi − y)2 = 1 −

∑ni=1(yi − yi)2∑ni=1(yi − y)2 (11)

あるいは,残差変動∑n

i=1(yi − yi)2 が全変動に対してどれだけ小さいか▶ R2 = 1なら回帰分析によって従属変数を完全に説明でき (残差変動が 0),

R2 = 0なら全く説明できない (残差変動が 1)▶ ただし,R2 は独立変数を追加すれば,それが何であれ (無意味なものでも)必ず増加する

▶ 独立変数の数 kの違いを調整するには,自由度調整済み決定係数 R2aを用い

る (副読本・田中本第 6章)

R2a = 1 −

∑ni=1(yi − yi)2/(n − 1 − k)∑n

i=1(yi − y)2/(n − 1)(12)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 12 / 46

Page 15: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

単回帰分析と重回帰分析

▶ 単回帰分析▶ 従属変数の原因を単一の独立変数に求める回帰分析例 y = β0 + β1x1 + ϵ

▶ 重回帰分析▶ 従属変数の原因を複数の独立変数に求める回帰分析例 y = β0 + β1x1 + β2x2 + β3x3 + ϵ

▶ 重回帰分析は,複数の単回帰分析を行なっている訳ではないy′ = β0 + β1x1 + ϵy′′ = β0 + β2x2 + ϵではない

▶ 重回帰分析は,他の独立変数を一定に保ったときに,ある独立変数が従属変数に与える影響を求めている

▶ ceteris paribus (他の条件が一定とする)▶ 「他の独立変数のうち他の独立変数とは関係のない部分が,従属変数のうち他の独立変数とは関係のない部分に与える影響」(浅野・矢内本, p.192)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 13 / 46

Page 16: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰係数と限界効果

線形回帰における (偏) 回帰係数の解釈

y = β0 + β1x1 + β2x2 + β3x3 + ϵ (13)

という回帰式を考える▶ この回帰式において,独立変数 xk の偏回帰係数 βk は,他の独立変数の値を一定に保ったとき,xk が 1 (単位) 増加したときの従属変数 (の予測値) yの増加量

▶ 重回帰分析における「偏回帰係数」の「偏」は偏微分の「偏 (partial)」と同じ意味

▶ つまり,「偏」は「他の (独立) 変数の値を一定に保ったとき」の意味▶ 「xk が 1 (単位) 増加したときの従属変数 (の予測値) yの増加量 (影響の大きさ)」のことを,限界効果 (marginal effect) という

▶ 回帰係数と同じに思えるが,より高度な一般化線形モデル (本講義では扱わない) の理解や,後述の交互作用項を含むモデルの理解には限界効果が非常に重要

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 14 / 46

Page 17: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰係数と限界効果線形回帰における (偏) 回帰係数の解釈

▶ 解析では,統計的有意性 (statistical significance) と同程度以上に,実質的有意性 (substantial significance; 効果の大小) が重要

▶ 実質的有意性を解釈する上では,限界効果が鍵になる▶ 一般化線形モデル (identity link 以外) では線形回帰のような直感的な解釈が困難なため,限界効果の計算・作図がより重要になる

限界効果と (偏) 回帰係数

▶ 「偏」の字から直感的にわかる通り,xk の限界効果は (13)式を xk で偏微分すれば求められる.(13)式を x1 偏微分すれば,

∂y

∂xk= βk (14)

▶ 具体的な解釈は,xk と yの「単位」(“1”が何を意味するか) に依存する

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 15 / 46

Page 18: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰係数と限界効果

限界効果,実質的有意性の重要さ

▶ よく聞く表現:「この変数はトウケイテキニユーイだった.大事だ」▶ 気をつけるべき点:統計的に有意だからといって,実質的に有意とは限らない (「統計的に有意でも,大して影響のない」変数もある)

「他の独立変数が一定のとき」の意味をよく考える

▶ 常に「一定に保つ」ことができる訳ではない▶ 例:二乗項や交互作用項/交差項 (interaction term) が含まれる回帰式▶ 交互作用 (interaction):ある独立変数の効果が,他の独立変数の値によって異なること

▶ いずれの場合でも,ある独立変数 xk「だけ」を動かして,その限界効果を提示することは不可能 (掛け算してるから!)

▶ 観察データ (observational data) では,往々にして独立変数間に相関がある(Hanmer & Ozan Kalkan, 2013)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 16 / 46

Page 19: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の解釈:ダミー変数▶ ダミー変数 (dummy variable):特定の場合に 1をとり,他の場合には 0をとる二値の変数

例 大学院卒 (大学院卒なら 1,その他なら 0)▶ 0の値をとるグループを,基準グループ (reference group) と呼ぶ

x

y

o

y = β0 + β1x

y = β0 + β1x+ β2

β2

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 17 / 46

Page 20: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の解釈:変数変換▶ 収益率や弾力性等を計算したい場合,変数を対数変換する▶ 対数変換した場合,以下のように (近似的に) 解釈できる例 コブ・ダグラス型生産関数,貿易の重力モデル (対数線形モデル)

従属変数 独立変数 回帰係数 β の解釈y x xが 1単位増加したとき,yが β 単位増

加するln y x x が 1 単位増加したとき,y が 100 ×

β% 増加する (半弾力性 semi-elasticity)

β = ∆y/y

∆x

y ln x xが 1%増加したとき,yが β/100単位増加する

ln y ln x xが 1%増加したとき,y が β%増加する (弾力性 elasticity) β = ∆y/y

∆x/x

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 18 / 46

Page 21: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

補足:対数関数の性質

ln(1) = 0 (15)ln(xr) = r ln(x) (16)

ln(x1x2) = ln(x1) + ln(x2) (17)

ln(

x1

x2

)= ln(x1) − ln(x2) (18)

d ln(x)dx

= 1x

(19)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 19 / 46

Page 22: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

限界効果の計算:交互作用項がある場合

交互作用項 (interaction term) とは

▶ x1 × x2 のような,「かけ算」で表現される (独立) 変数▶ x1 × x2 は “product term,” x1 と x2 は “constitutive term(s)” (main effect)

▶ 理論的議論:Berry et al. (2010, 2012); Brambor et al. (2006); Clark et al.(2006); Kam & Franzese (2007); Rainey (2015)

交互作用項の解釈と限界効果

▶ よくある間違い (1):x1 (e.g., 投薬の有無) や x2 (e.g., 性別) の交互作用項x1 × x2 を回帰式に投入したから,x1 と x2 をバラバラに回帰式に投入する必要はない!

▶ 誤:y = β0 + β3x1x2 + ϵ▶ 正:y = β0 + β1x1 + β2x2 + β3x1x2 + ϵ

▶ よくある間違い (2):交互作用項の回帰係数 β3 が有意だった! だから,x1や x2 単独ではなく,その組み合わせが重要! (もうちょっと作業が必要)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 20 / 46

Page 23: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

限界効果の計算:交互作用項がある場合

▶ 交互作用項がある場合,product term も constitutive term も,単一の回帰係数のみでは解釈できない

▶ たとえば,y = β0 + β1x1 + β2x2 + β3x1x2 + ϵの回帰式を考える▶ x1 の限界効果を計算するには回帰式を x1 で偏微分すればよいので,

∂y

∂x1= β1 + β3x2 (20)

▶ すなわち,x1 の限界効果は β1 ではなく,β1 + β3x2

▶ x2 の限界効果も同様に求められる

∂y

∂x2= β2 + β3x1 (21)

▶ x2 の限界効果は β2 ではなく,β2 + β3x1

▶ y = β0 + β1x1 + β2x21 + ϵのような,二乗項 (“2”である必要はない.3以上

でもよい) を含む回帰式についても同様

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 21 / 46

Page 24: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

限界効果の計算:交互作用項がある場合

含意

(1) x1 と x2 の「掛け算」が入るのだから,x1 を「だけ」を変化させ,「他の変数を一定に」することはできない

(2) x2 = 0 (あるいは β3 = 0) でない限り,x1の限界効果は (β1だけでなく) x2の水準に依存する(2’) x2 の水準を固定しなければ x1 の限界効果を計算できないが,x2 の水準によっ

て x1 の限界効果が変化する▶ 実際問題,「様々な x2 の水準における x1 の限界効果を示す図」がなければ解釈できない!

▶ 典型的には,x2 を x軸に,x2 がある値のときの x1 の限界効果を y 軸にとったグラフを使う

(3) 一般化線形モデル (identity link以外) の場合,“compression effect” が生じるため,さらに大変 (「他の全ての独立変数」の値に依存する; Berry et al., 2010;Rainey, 2015)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 22 / 46

Page 25: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰係数の検定

Page 26: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰係数の t検定

▶ tk = βk − βk

SE(βk)は,自由度 n − k − 1の t分布に従う

▶ βk は真の回帰係数,βk はその OLS推定値▶ 中心極限定理の応用:nが十分大きければ,標準正規分布近似が使える▶ OLS推定量の漸近正規性 (副読本・鹿野本第 11章)▶ OLS推定量の分散については,副読本・鹿野本第 5, 11章

▶ 検定統計量 tk と自由度 n − k − 1の t分布を使った t検定が行なえる▶ 帰無仮説 H0:βk = 0▶ 対立仮説 H1:βk = 0

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 23 / 46

Page 27: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰係数の t検定

▶ 平均値の t検定と同様の手順で,βk の仮説検定ができる▶ 帰無仮説 H0:βk = 0▶ 対立仮説 H1:βk = 0 (両側検定)

▶ 有意水準 α = 0.05なら,平均値の検定でも出てきた「1.96SE」が目安▶ H0 は βk = 0なので,

▶ tk = βk − βk

SE(βk)= βk − 0

SE(βk)= βk

SE(βk)▶ |tk| > 1.96 (あるいは約 2) なら,その回帰係数の効果は統計的に有意

(statistically significant)▶ 「βk ± 1.96SE(βk) (あるいは約 2SE(βk)) の範囲 = 95%信頼区間に 0が含まれなければ」でも同様

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 24 / 46

Page 28: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rでの出力例:先週配布の演習資料

▶ −10.732/3.667 = −2.919や 5.361/0.332 = 16.148と「星」の対応は?

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 25 / 46

Page 29: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:線形回帰

演習資料

▶ Rでの線形回帰の実行方法と,OLS推定量の漸近正規性を理解する▶ 「演習資料」ページの「回帰分析のシミュレーション (1):simulating_ols.r」▶ URL: http://cfes-project.eco.u-toyama.ac.jp/wp-content/

uploads/simulating_ols.r

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 26 / 46

Page 30: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:線形回帰

架空データを生成するためのパラメータを設定する1 ## Set sample size2 sample_size = 10^334 ## Set regression parameters5 beta_0 = 16 beta_1 = 27 x_mu = 28 x_sigma = 19 error_mu = 0

10 error_sigma = 1

架空データを発生させる1 set.seed(123456)2 simulated_x = rnorm(sample_size, mean = x_mu, sd = x_sigma)3 simulated_y = beta_0 + beta_1*simulated_x + rnorm(sample_size, mean = error_mu, sd =

error_sigma)4 simulated_dat = data_frame(simulated_y = simulated_y, simulated_x = simulated_x)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 27 / 46

Page 31: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:線形回帰

架空データを生成するためのパラメータを設定する1 ## Set sample size2 sample_size = 10^334 ## Set regression parameters5 beta_0 = 16 beta_1 = 27 x_mu = 28 x_sigma = 19 error_mu = 0

10 error_sigma = 1

架空データを発生させる1 simulated_x = rnorm(sample_size, mean = x_mu, sd = x_sigma)2 simulated_y = beta_0 + beta_1*simulated_x + rnorm(sample_size, mean = error_mu, sd =

error_sigma)3 simulated_dat = data_frame(simulated_y = simulated_y, simulated_x = simulated_x)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 28 / 46

Page 32: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:線形回帰

架空データの内容を確認する1 simulated_dat

架空データについて,OLS推定を行なう1 ## OLS estimate2 simulated_ols = lm(simulated_y ~ simulated_x, data = simulated_dat)

真の回帰係数 β1 = 2に近い推定結果が得られている?

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 29 / 46

Page 33: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:線形回帰

真の回帰係数 β1 = 2に近い推定結果が得られている?1 > summary(simulated_ols)23 Call:4 lm(formula = simulated_y ~ simulated_x, data = simulated_dat)56 Residuals:7 Min 1Q Median 3Q Max8 -2.8559 -0.7363 -0.0107 0.7402 3.60529

10 Coefficients:11 Estimate Std. Error t value Pr(>|t|)12 (Intercept) 0.98336 0.07287 13.50 <2e-16 ***13 simulated_x 2.00431 0.03250 61.67 <2e-16 ***14 ---15 Signif. codes: 0‘ *** ’ 0.001‘ ** ’ 0.01‘ * ’ 0.05‘ ’. 0.1‘ ’11617 Residual standard error: 1.019 on 998 degrees of freedom18 Multiple R-squared: 0.7921, Adjusted R-squared: 0.791919 F-statistic: 3803 on 1 and 998 DF, p-value: < 2.2e-16

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 30 / 46

Page 34: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:OLS推定量の漸近分布以上の架空データの生成と回帰分析を 10,000回繰り返し,β1の OLS推定量の分布を確認する

1 set.seed(123456)2 n_simulationz = 10^43 sim_betaz = numeric(n_simulationz)45 ## Generate and estimate parameters6 for (i in 1:n_simulationz) {7 ## Print progress8 cat(str_c(i, "␣out␣of␣", n_simulationz, "␣done.␣\r"))9

10 ## Sample data11 simulated_x = rnorm(sample_size, mean = x_mu, sd = x_sigma)12 simulated_y = beta_0 + beta_1*simulated_x + rnorm(sample_size, mean = error_mu, sd =

error_sigma)13 simulated_dat = data_frame(simulated_y = simulated_y, simulated_x = simulated_x)1415 ## OLS estimate16 simulated_ols = lm(simulated_y ~ simulated_x, data = simulated_dat)1718 ## Store result19 sim_betaz[i] = simulated_ols$coefficients[2]20 }

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 31 / 46

Page 35: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:OLS推定量の漸近分布

1.90 1.95 2.00 2.05 2.10

02

46

810

12

Sample OLS estimates

Density

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 32 / 46

Page 36: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の前提

Page 37: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の根源的仮定

▶ 線形回帰モデル yi = β0 + β1xi + ϵi, i = 1, . . . , nを考える (yi も xi も確率変数)

▶ OLS推定量は,β0 = yn − β1xn

β1 =∑n

i=1(xi − xn)(yi − yn)∑ni=1(xi − xn)2 = sxy

sxx

▶ β0 と β1 が β0 と β1 の不偏推定量・一致推定量になるための必要条件は,仮定 1 外生性:E[ϵi|xi] = 0仮定 2 独立標本:異なる観察 (xi, yi)と (xj , yj)は互いに独立

▶ 教科書・浅野・矢内本第 12章,副読本・鹿野本第 10章,副読本・田中本第5–6章も参照のこと

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 33 / 46

Page 38: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

回帰分析の根源的仮定

仮定 1:外生性

▶ E[ϵi|xi] = 0を満たす独立変数 xi を,外生変数 (xi は外生的) という▶ xi が外生変数ならば,

▶ E[yi|xi] = β0 + β1xi + E[ϵi|xi]=0

= β0 + β1xi (線形回帰モデルの整合性)

▶ E[ϵi] = 0, E[xiϵi] = 0 (xi と ϵi の直交)▶ Cov(xi, ϵi) = 0 (xi と ϵi の無相関)が成り立つ

仮定 2:独立標本

▶ 標本が互いに独立ならば,xi 以外の独立変数は ϵi についてなんら情報をもたない

▶ ϵi = yi − β0 − β1xi とすれば,E[ϵi|xi] = E[ϵi|x1, . . . , xn]▶ ϵi = yi − β0 − β1xi なので,ϵi と ϵj は互いに独立

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 34 / 46

Page 39: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

OLS推定量の不偏性と一致性強い外生性 (strong exogeneity)

E[ϵi|x1, . . . , xn] = 0, i = 1, . . . , n (22)

E[ϵi|xi] = 0 (仮定 1) かつ E[ϵi|xi] = E[ϵi|x1, . . . , xn] (仮定 2)

OLS推定量の不偏性 (unbiasedness)

E[β1] = β1 (23)

OLS推定量の期待値が母回帰係数になる

OLS推定量の一致性 (consistency)

plim β1 = β1 + Cov(xi, ϵi)Var(xi)

= β1 (24)

n → ∞で,OLS推定量が母回帰係数に確率収束する▶ 大数の法則と中心極限定理を思い出す▶ 仮定 1より,Cov(xi, ϵi) = 0に注意

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 35 / 46

Page 40: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

OLS推定量の不偏性と一致性

出所:副読本・田中本 p.80

▶ 小標本のデータ環境では,推定量に不偏性 E[θ] = θが最低限求められる▶ 大標本の (漸近的な) データ環境では,推定量に一致性 plim θ = θが最低限求められる

▶ 大数の法則と中心極限定理は,大標本理論 (漸近理論) の二大定理▶ 実際の分析では,一致性しか実現できないことも多い

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 36 / 46

Page 41: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

内生変数とバイアス

Page 42: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

内生性バイアス:独立変数と誤差項の相関

OLS推定量の一致性 (再掲)

plim β1 = β1 + Cov(xi, ϵi)Var(xi)

= β1

▶ Cov(xi, ϵi) = 0 (xi が外生変数) のとき,OLS推定量は母回帰係数 β1 の一致推定量になる

▶ Cov(xi, ϵi) = 0 (xi が内生変数) のとき,OLS推定量は母回帰係数 β1 の一致推定量にならない!

plim β1 = β1 + Cov(xi, ϵi)Var(xi)

= β1 + bias(β1) = β1 (25)

▶ 外生変数 (exogenous variable):誤差項と相関しない独立変数▶ 内生変数 (endogenous variable):誤差項と相関する独立変数

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 37 / 46

Page 43: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

内生性バイアス:独立変数と誤差項の相関

▶ xi が内生変数のとき,OLS推定量は一致性をもたず,バイアス (bias) をもつ

▶ バイアス (偏り):推定量 (の期待値) と真のパラメータとの乖離,ズレ▶ 仮定が満たされていれば,標本サイズが十分大きいとき,OLS推定量を真のパラメータとみなしてよい (推定量が真のパラメータに確率収束する)

▶ 推定量が一致性を持たない = 標本サイズを大きくしても,「真の回帰係数」に到達できない

▶ xi が内生変数のとき,β1 は bias(β1)の分だけ,真の β から乖離した値をとってしまう

▶ (25)式の bias(β1) = Cov(xi, ϵi)Var(xi)

を,内生性バイアスと呼ぶ▶ bias(β1) > 0なら,過大評価▶ bias(β1) < 0なら,過小評価

▶ 上のスライドで用いた Rコード (架空データの回帰分析) では,xiが外生変数だったので一致推定できていた

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 38 / 46

Page 44: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:内生性バイアス

演習資料

▶ 内生性バイアスが生じる架空データをシミュレーションする▶ 「演習資料」ページの「内生変数バイアスのシミュレーション:

simulating_bias.r」▶ URL: http://cfes-project.eco.u-toyama.ac.jp/wp-content/

uploads/simulating_bias.r

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 39 / 46

Page 45: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:内生性バイアス架空データを生成するためのパラメータを設定する (先ほどと同じ)

1 sample_size = 10^32 beta_0 = 13 beta_1 = 24 x_mu = 25 x_sigma = 16 error_mu = 07 error_sigma = 1

xと ϵが相関する架空データを発生させる (何が変わったか注意)1 ## Set bias2 bias = 0.534 ## Sample data5 simulated_error = rnorm(sample_size, mean = error_mu, sd = error_sigma)6 simulated_x = rnorm(sample_size, mean = x_mu, sd = x_sigma)7 simulated_x = (1 + bias*simulated_error)*simulated_x ## x is correlated with epsilon8 simulated_y = beta_0 + beta_1*simulated_x + simulated_error9 simulated_dat = data_frame(simulated_y = simulated_y, simulated_x = simulated_x)

xと ϵが (想定通り) 相関しているか確認する1 > cor(simulated_x, simulated_error)2 [1] 0.6467905

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 40 / 46

Page 46: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:内生性バイアス架空データを回帰分析する

1 simulated_ols = lm(simulated_y ~ simulated_x, data = simulated_dat)

回帰分析の結果を出力する.回帰係数を正しく推定できている?1 > summary(simulated_ols)23 Call:4 lm(formula = simulated_y ~ simulated_x, data = simulated_dat)56 Residuals:7 Min 1Q Median 3Q Max8 -2.74299 -0.53724 -0.09216 0.43467 2.934839

10 Coefficients:11 Estimate Std. Error t value Pr(>|t|)12 (Intercept) 0.14678 0.04016 3.655 0.000271 ***13 simulated_x 2.43096 0.01609 151.123 < 2e-16 ***14 ---15 Signif. codes: 0‘ *** ’ 0.001‘ ** ’ 0.01‘ * ’ 0.05‘ ’. 0.1‘ ’11617 Residual standard error: 0.7569 on 998 degrees of freedom18 Multiple R-squared: 0.9581, Adjusted R-squared: 0.958119 F-statistic: 2.284e+04 on 1 and 998 DF, p-value: < 2.2e-16

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 41 / 46

Page 47: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:内生性バイアス

母回帰係数,推定結果,バイアスを出力する1 > beta_1 ## true beta2 [1] 23 > simulated_ols$coefficients[2] ## estimated beta4 simulated_x5 2.4309646 > cov(simulated_x, simulated_error)/var(simulated_x) ## bias7 [1] 0.43096378 > beta_1 + cov(simulated_x, simulated_error)/var(simulated_x)9 [1] 2.430964

(25)式 plim β1 = β1 + Cov(xi, ϵi)Var(xi)

= β1 + bias(β1) = β1 を思い出す

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 42 / 46

Page 48: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:内生性バイアス以上のシミュレーションを,先ほどと同じ要領で 1,000回繰り返す

1 set.seed(123456)2 n_simulationz = 10^33 sim_betaz = numeric(n_simulationz)45 ## Generate and estimate parameters6 for (i in 1:n_simulationz) {7 ## Print progress8 cat(str_c(i, "␣out␣of␣", n_simulationz, "␣done.␣\r"))9

10 ## Sample data11 simulated_error = rnorm(sample_size, mean = error_mu, sd = error_sigma)12 simulated_x = bias*simulated_error*runif(sample_size) ## x is correlated with

epsilon13 simulated_y = beta_0 + beta_1*simulated_x + simulated_error14 simulated_dat = data_frame(simulated_y = simulated_y, simulated_x = simulated_x)1516 ## OLS estimate17 simulated_ols = lm(simulated_y ~ simulated_x, data = simulated_dat)1819 ## Store result20 sim_betaz[i] = simulated_ols$coefficients[2]21 }

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 43 / 46

Page 49: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Rコード:内生性バイアス

同じ要領でヒストグラムを描くと・・・

2.0 2.1 2.2 2.3 2.4 2.5

05

1015

20

beta estimates

Density

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 44 / 46

Page 50: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

なぜCov(xi, ϵi) = 0が生じるのか?

代表的な原因

▶ 除外 (省略) 変数 (omitted variable)▶ 前回配布の演習資料はこのケースをシミュレーション

▶ 測定誤差 (measurement error)▶ 同時性 (simultaneity)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 45 / 46

Page 51: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

次回講義と課題

▶ 次回講義▶ 今日の続き (回帰分析とバイアス)▶ データの自動取得 (API, ウェブスクレイピング)

▶ 文献と課題必須 星野・田中『Rによる実証分析』第 4–6章 (教科書)推奨 Gelman & Hill. Data analysis. Chaps. 3–4 (教科書)推奨 浅野・矢内『Stataによる計量政治学』第 7–12章 (副読本)推奨 石田ほか『Rによるスクレイピング入門』(副読本)推奨 森田『実証分析入門』第 4–8章 (副読本)課題 (1) 講義資料「R言語の基礎,オブジェクトとその要素へのアクセス」と「R

によるデータの読み込みと書き出し」を RStudioで練習しておくこと.(2) シミュレーションを再度行なってみること

▶ 特に,(例示したコードとは異なり) 負の内生変数バイアスが生じるシミュレーションを行なうこと (配布したコードを一部変更すればできる)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 46 / 46

Page 52: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

再掲:統計的仮説検定への導入

▶ 大きさ nの標本について,以下の検定統計量 t値 (t value) は,自由度v = n − 1の t分布 t(v)に従う (X, s2 はそれぞれ標本平均と不偏分散)

t = X − µ√s2/n

= X − µ

SE(26)

▶ 中心極限定理で出てきた z = X−µ√σ2/n

∼ N (0, 1)と同じく,t値もX − µに着目している (分母が違う:zの σ2 は厳密にいうと母分散)

▶ n → ∞で t分布は標準正規分布N (0, 1)に近付くので,nが大きければ標準正規分布で近似できる (tが zに近付く)

▶ nや正規分布近似について回りくどい言い方をしていた理由の 1つ (n → ∞)▶ 教科書が正規分布近似を使う際,「nが十分に大きな数であるならば」と断っていることに注意 (e.g., 第 5章)

▶ 検定統計量によって従う分布は異なるが (t分布とは限らない),以下で説明する検定の基本的手続きは同じ (e.g., F 分布, χ2 分布)

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 1 / 4

Page 53: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

再掲:統計的仮説検定t分布,t値と p値

▶ t分布に従う確率変数について,cL = −tn−1,0.025 (下側臨界値) からcU = tn−1,0.025 (上側臨界値) の区間 [cL, cU ]に,データの約 95%が収まる(α = 0.05を考えているので,α/2 = 0.025)

▶ 大きさ nの標本から得た t値は,自由度 n − 1の t分布に従う▶ cL, cU の値は,既出の Rコードを使えば求められる▶ nが十分大きければ,N (0, 1)と区間 [−1.96, 1.96]を用いてもよい

▶ t値による検定では αを事前に定めた上で,t > cU (t < cL) かを判定する

0 (X = µ0) cUcL

α

2

棄却域 [−∞, cl] 棄却域 [cu, ∞]受容域 [cl, cu]

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 2 / 4

Page 54: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

再掲:統計的仮説検定t分布,t値と p値

▶ 大きさ nの標本から得た t値は,自由度 n − 1の t分布に従う▶ p値 (p value):帰無仮説が正しいとき,標本から得た t値以上に (絶対値で)分布の中心からからかけ離れた値をとる確率 (両側検定の場合)

▶ t値が 0から離れるほど,p値は小さくなる:「帰無仮説が正しいとすれば,以上な t値が出た」(起こり得ないことが起きた) と考える

▶ t値による検定とは異なり,p値による検定では「異常性」を p値によって確率的に示すだけで棄却はしない (「棄却の妥当性」を示す)

0 (X = µ0) |t|−|t|

p

2p

2

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 3 / 4

Page 55: Rによる計量分析:データ解析と可視化 - 回帰分析の理解 · Rによる計量分析:データ解析と可視化 回帰分析の理解 伊藤岳 富山大学経済学部2017

Berry, William D; Jacqueline H R DeMeritt & Justin Esarey (2010) Testing for Interaction Effects in BinaryLogit and Probit Models: Is an Interaction Term Essential? American Journal of Political Science 54(1):248–266.

Berry, William D; Matt Golder & Daniel Milton (2012) Improving Tests of Theories Positing Interaction.Journal of Politics 74(3): 653–671.

Brambor, Thomas; William Clark & Matt Golder (2006) Understanding interaction models: Improvingempirical analyses. Political Analysis 14(1): 63–82.

Clark, William R; Michael J Gilligan & Matt Golder (2006) A simple multivariate test for asymmetrichypotheses. Political Analysis 14(3): 311–331.

Hanmer, Michael J & Kerem Ozan Kalkan (2013) Behind the Curve: Clarifying the Best Approach toCalculating Predicted Probabilities and Marginal Effects from Limited Dependent Variable Models.American Journal of Political Science 57(1): 263–277.

Kam, Cindy D & Robert J Franzese (2007) Modeling and Interpreting Interactive Hypotheses in RegressionAnalysis: A Refresher and Some Practical Advice. Ann Arbor, MI: University of Michigan Press.

Rainey, Carlisle (2015) Compression and Conditional Effects: A Product Term Is Essential When UsingLogistic Regression to Test for Interaction. Political Science Research and Methods forth.

伊藤 岳 (Toyama/NIHU) R による計量分析 January 15, 2018 4 / 4