回帰分析
重回帰(1)
項目
• 重回帰モデルの前提
• 最小二乗推定量の性質
– 仮説検定(単一の制約)
– 決定係数
• Eviewsでの回帰分析の実際
• 非線形効果
• ダミー変数
– 定数項ダミー
– 傾きのダミー
– 3つ以上のカテゴリー
重回帰モデル
multiple regression model
• 説明変数が2個以上
u
x
x
x
y
1 1
2 2
k k
i ix
y
他の説明変数を一定に保ってお いて,xi だけを1単位増加させた ときに y が何単位増えるか 他の要因をコントロールした xi 固 有の影響重回帰モデル
前提
1. 線型モデル(パラメータに関し)
2. 誤差項の期待値は0
3. 誤差項は互いに独立
4. 誤差項の分散は一定(分散均一性)
5. 誤差項は正規分布に従う
– BLUEの成立のためにはこの条件は不要
i ki k i i ix
x
x
u
y
1 1
2 2
最小二乗法
• 残差平方和を最小にするようにパラメータを決定
– a,b1,b2,..,bk : 未知パラメータ ,1,2,..k の推定値 – ei : 残差
n i ki k i i i n i i kx
b
x
b
x
b
a
y
e
b
b
b
a
S
1 2 2 2 1 1 1 2 2 1,
,..,
)
,
(
最小二乗推定量
n i ie
k
n
RSS
k
n
s
1 2 2)
1
(
1
)
1
(
1
誤差項の分散の推定量 k+1は説明変数の個数(定数項とxの数)SER (standard error of the regression)
j xx jj j j j
S
a
b
b
E
2 2)
var(
)
(
Sxxj : 説明変数 x j の平方和 (xj を他の説明変数に回帰し たときの残差の平方和)仮説の検定
0
,
1
~
2N
S
b
j xx
(
1
)
~
)
.(
.
2 0 0
k
n
t
S
s
b
b
e
s
b
j xx j j j j j
H
0:
j=
j0 k+1は説明変数の個数(定数項とx)当てはまりの良さ
• TSS=ESS+RSS
TSS
RSS
TSS
ESS
R
2
1
)
1
/(
1
)
1
/(
)
1
/(
1
2 2
n
TSS
s
n
TSS
k
n
RSS
R
決定係数 自由度修正済み決定係数 adjusted R2 説明変数の数kを増やしてい けば,R2は単調に増加する 説明変数の増加にペナル ティーを課すように修正したR2重回帰での結果(2)
-8 -4 0 4 8 12 16 0 4 8 12 16 20 EDUC R E S ID -8 -4 0 4 8 12 16 0 10 20 30 40 50 TENURE R E S ID -8 -4 0 4 8 12 16 0 10 20 30 40 50 60 EXPER R E S ID -8 -4 0 4 8 12 16 -4 0 4 8 12 16 WAGEHAT R E S ID被説明変数をln(wage)にした場合 • Educが1年増加すると賃 金は9.2%上昇 • Experが1年増加すると賃 金は0.4%増加 • Tenureが1年増加すると 賃金は2.2%増加 ここをクリックすると, Representation Estimation output Coefficient Diagnostics Residual Diagnostics などのメニューが表れる (この画面はEstimation Output)
-2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 0 4 8 12 16 20 EDUC R E S ID -2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 0 10 20 30 40 50 TENURE R E S ID -2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 0 10 20 30 40 50 60 EXPER R E S ID -2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 0.4 0.8 1.2 1.6 2.0 2.4 2.8 LWAGEHAT R E S ID
Rでの回帰分析
lm(y ~ x1 + x2 + x3 + x4) lm( モデル式 ) で回帰分析をおこなう 回帰分析の結果をobjectに代入 summary(object)で結果の概要を出力 plot(object) で残差の診断---wage1_1.lm<- lm(wage~ educ + exper + tenure) summary(wage1_1.lm)
Rでの残差診断
被説明変数にwage とlwage(wageの対数値)を用 いた回帰の比較
非線形効果
e
z
b
x
b
x
b
a
y
1
2 2
3
x
b
b
x
y
2 1
2
説明変数xの2次の項を説明変数として加える 係数の意味 xが1単位増加したときyに与える効果 xの水準に依存する 係数の意味の直感的な把握の仕方 • b1,b2の値をもとに xが与えられた場合の ∂y/∂x の大きさを計算する(Excelの活用) • Eviewsの中では,例えば,xが平均値をとる場合の効果についてはコマンドラインでscalar dydx = @coefs(i) + @coefs(i+1)* @mean(x)
とするとスカラー変数 dydxが作成される(@coefs(i) 直前の回帰のi番目の係数(xの係 数:定数項は1番目とする), @coefs(i+1): x^2の係数,@mean(x) 変数xの平均値)
Eviewsでの回帰分析の統計量
• スカラー変数
@regobs オブザベーション数,@f F統計量,@ssr 残差平方和 その他 @aic, @coefs(i), @stderrs(i), @tstats(i), @dw, @r2, @rbar2
• ベクトル変数
@coefs 係数ベクトル @coefs(i) でi番目の説明変数の係数(定数項 が1番目),@stderrs 係数の標準誤差,@tstats t値
コマンド行で
scalar var1 = @ssr vector var2 = @coefs
Rでの回帰分析の統計量
回帰分析の結果はsummary(object)で取り出せたが,他の情報も取り出せる summary(object) 回帰分析の結果のようやく coef(object) 係数の推定値 resid(object) 残差 fitted(object) 回帰モデルの推定値 deviance(object) 残差平方和 plot(object) 残差のチェックのためのグラフ confint(object) 係数の信頼区間 ---コマンドラインで,coefficients(wage1.lm)またはcoef(wage1.lm)とタイプすると 推計された係数が出力される coef(wage1.lm)[1] coef(wage1.lm)[2] で係数ベクトルの1番めの要素と2番 めの要素が出力されるRでの変数の作成方法
• コマンドラインで
新変数名 <- 計算式 で作成できる
例) lnwage <- log(wage)
exper2 <- exper * exper exper2 <- exper^2
• 回帰式の中での指定計算式で指定することもできる。
log( )はそのまま使えるようだが,2次式等はI( )関数を用 いる
lm(log(wage) ~ educ)
問題(1)
• ln(wage)を被説明変数にし,educ, exper, tenure,
tenureの2乗を説明変数にして回帰分析を行え。
– wage1.rawのデータを用いる• tenureの範囲を調べよ。
• tenureが1年増加したとき,wageは何%増加するか
– tenure=0, 5, 10, 20, 30, 40のそれぞれの場合について• 上の回帰分析の係数の値を用い,tenureとwageの
関係をグラフで表せ。
• educの2乗を説明変数に加えるとどうなるか。
ダミー変数
• 質を表す変数
– 女性ならば1,そうでなければ0
– 結婚していれば1.そうでなければ0
– 大学卒ならば1,そうでなければ0
• educ, wage, experはこれに対し連続変数
• 一般に,0または1をとるような変数をダミー変
数と呼ぶ
ダミー変数(2)
• 定数項ダミー
• 傾きに関するダミー
• 3つ以上のカテゴリーを持つ変数の場合
– 学歴 • 中卒または高校中退 • 高卒,大卒未満 • 大卒以上 – 職業 • 事務職 • 研究職 • 営業 • 現場educ
b
female
b
a
wage
)
1
2
ln(
educ ln(wage) female=0の場合 female=1の場合 educ b a wage) 2 ln( educ b b a wage) 1 2 ln( b2 b2 a a+b1 図はb1<0の場合定数項ダミー
female educ
b educ b female b a wage) 1 2 3 ln( educ ln(wage) female=0の場合 female=1の場合 educ b a wage) 2 ln( educ b b b a wage) ( ) ln( 1 2 3 b2 b2+b3 a a+b1 図はb1<0,b3>0の場合傾きのダミー
問題 (2)
• femaleダミー変数を説明変数に加えた回帰を
行え
– 被説明変数 ln(wage)
– 説明変数 educ, exper, tenure, female
• 賃金の男女格差は存在するか
• 学歴の効果に男女格差が存在するか
– educ とfemaleの交差項を作成する
• exper, tenureの効果に男女格差が存在する
か
問題 (3)
• 次の回帰を行う
– 被説明変数 ln(wage)
– 説明変数 educ, tenure, exper, female, female*educ, female*tenure, female*exper • 男女別に回帰分析を行う – EViewsのメニューでsampleを選択 If condition..のボックスに条件 式を記入 – female=0 とすれば男性のみ,female = 1 とすれば女性のみ; 戻すと きはsample で条件式を消す
– 説明変数を educ, tenure, exper として回帰 – ダミー変数を用いた回帰と結果を比較せよ。 – Rの場合は,lm( ) でsubset関数を使う
3つ以上のカテゴリー
• 例)学歴 – 中卒, 高卒(短大卒を含む), 大卒 の3つのカテゴリー • この場合,2つのダミー変数をつくる – 中卒をベースにした効果 – D1: 中卒とした比較した高卒の効果 – D2: 中卒と比較した大卒の効果 – 高卒と大卒の比較は? – 3つダミー変数を作るとどうなるか? • N種類のカテゴリー N-1 個のダミー変数 中卒 高卒 大卒 D1 0 1 0 D2 0 0 1問題(4)
• 結婚ダミーが賃金に与える影響を調べよ – married(結婚していれば1) • 結婚が賃金に与える影響は男女間で異なるかもしれない – 結婚×男女 の組み合わせで4通り – married と female のそれぞれの組合せの観測度数を調べよ • 二つの変数(married と female)を選択して,グループとして開く • Menuから View/N way tabulation クロス集計票– 被説明変数 ln(wage), 説明変数 female, married, female*married, + educ, exper, tenure として回帰
– female*married 適当な名前で新しい変数を作る – female, married, female*married の係数の意味は – 定数項の大きさは?
問題(5)
• 教育年数の影響は,
連続変数で捉えるのではなく,学歴 別に調べた方がよいかもしれない• 教育年数の分布を調べよ
• 教育年数から次のような学歴ダミー変数を作れ
• 高卒未満 ( educ < 12) • 高卒以上 大卒未満 (12 <= educ <16) • 大卒 以上 (16 <= educ)• 次の回帰分析を行え
– 被説明変数:ln(wage),説明変数:学歴ダミー,その他の 変数 (exper, tenure, female)変数の作成方法(Eviews)
メニューの Genr ボタンをクリック新変数を作成する画面で次 のように記述
ED1 = (educ<16) and (educ>=12) ED2 = (educ>=16)
• 論理式を用いてダミー変数を作成(真なら1,偽なら0)
ED1: educ<16 かつ educ>=12 の時に限り1,それ以外は0 ED2: educ>=16 の時に限り1,それ以外は0。
ED1は高卒ダミー,ED2は大卒ダミー(中卒がベース) 論理式で用いる演算子
変数の作成方法(R)
コマンドラインで
ed1 <- (educ<16) & (educ>=12) ed2 <- (educ>=16) ed1(高卒ダミー)とed2(大卒ダミー)はTRUEとFALSEの2値をとる。このままで 回帰分析に使える Rでの論理演算子 == 等しい & and | or xor どちらか1つだけが真 ! 否定