R 이분산 1
I. 이분산 검정
II. 이분산 추정
b2-ch6-1-rev.R
library(stargazer)
sample1<-("http://kanggc.iptime.org/book/data/korea(77-9 3)-1.txt")
sample1_dat<-read.delim(sample1,header=T)
gnp<-ts(sample1_dat$gnp, start=c(1977,1), frequency=4) def<-ts(sample1_dat$def, start=c(1977,1), frequency=4) m2<-ts(sample1_dat$m2, start=c(1977,1), frequency=4)
ols.res<-lm(m2~gnp+def) summary(ols.res)
res<-resid(ols.res) res.t<-ts(res)
plot(res,main="Residual plotting(u(t) vs. time)",xlab='time') 다음에 계속
1. 그래프
- 화폐수요함수를 OLS로 추정한 후 구한 잔차의 시계열 그래프를 이분산이 존재할 가능성이 있음을 보여주고 있으나 그래프는 객관적인 판단이 될 수 없음을 알 수 있음
3
b2-ch6-1-rev.R 앞에서 계속
#LM test(white검정) n<-length(res) res.t.sq<-res.t^2 gnp.sq<-gnp^2 def.sq<-def^2 (res.aux<-
lm(res.t.sq~gnp+def+gnp.sq+def.sq+gnp*def)) lm<-n*summary(res.aux)$r.squared
lm
(pchisq(lm, df=5, lower.tail=F))
library(tigerstats)
pchisqGC(19.65366, df=5, region="above", graph=T)
2. White 검정
- White 검정법을 이용하여 자기상관 여부를 판단하기 위해서 계산한 LM 통계량 LM=n𝑹𝟐의 값이 19.65366
- 𝝌𝟐-분포에서 계산된 LM 통계량의 유의확률이 0.0014512
- 따라서, 5% 유의수준에서 이분산이 없다는 귀무가설을 기각하여 이분산이 있는 것으로 결정
- 이분산 문제를 해결하는 방법은 이분산의 구조에 따라 달라짐
- 예를 들어, 회귀모형과 교란항의 분산이 다음과 같은 이분산이라고 가정
- 원래의 회귀식을 다음과 같이 변환하여 이분산이 없는 모형을 도출
1. 모형
또는
- 이와 같이 변환된 회귀모형(transformed regression model)에서 𝒀𝒊∗를 𝟏
𝑿𝟐𝒊, 𝑿𝟐𝒊∗ , 𝑿𝟑𝒊∗ 에 대해 OLS로 추정하면 효율적인 추정량을 얻을 수 있는데 이를 GLS 추정량이라고 함
- 이러한 추정방법은 일반최소자승법인데 이를 특별히 가중최소자승법(Weighted Least Squares: WLS) 이라고 함
- 왜냐하면, 변환된 모형의 교란항의 분산은 동분산이기 때문
5
b2-ch6-2.R library(stargazer)
sample1<-("http://kanggc.iptime.org/book/data/korea(77-9 3)-1.txt")
sample1_dat<-read.delim(sample1,header=T)
gnp<-ts(sample1_dat$gnp, start=c(1977,1), frequency=4) def<-ts(sample1_dat$def, start=c(1977,1), frequency=4) m2<-ts(sample1_dat$m2, start=c(1977,1), frequency=4) ols.res<-lm(m2~gnp+def)
summary(ols.res) res<-resid(ols.res) res.t<-ts(res)
nm2<-m2/sqrt(gnp) nc<-1/sqrt(gnp) ngnp<-sqrt(gnp) ndef<-def/sqrt(gnp)
wls.lm<-lm(nm2~nc+ngnp+ndef-1) summary(wls.lm)
w0<-1/gnp
gls.lm<-lm(m2~gnp+def, weight=w0) summary(gls.lm)
stargazer(ols.res, wls.lm, type="text") stargazer(wls.lm, gls.lm, type="text")
- OLS로 추정한 회귀계수의 표준오차가 GLS로 추정한 회귀계수의 표준오차보다 커서 GLS 추정량이 효율적 인 추정량임을 확인할 수 있음
- 데이터를 변환하지 않고, 변환에 사용된 독립변수를 지정해 주고(여기서는 w0<-1/gnp로 지정해 줌) OLS 로 추정하면 추정된 회귀계수는 GLS 추정치가 됨