The Korean Journal of Stata 제 5 권 1 호 2018. 6. pp.31-46 와 코딩 요약 본논문에서는패널데이터분석의기초적인내용을 버전과 통계패키지를활용하여리뷰하고자한다 패널분석초심자를위해패널데 이터의개념과구조에대한설명으로시작한다 더나아가기초통계분석과정을설명한다 예제데이터는한국노동패널 차 차데이터를활용한다 명령문을주 로설명하며 통계패키지언어를이용해서도유사한결과를얻을수있다는것을보여주고있다 주제어 패널데이터 교신저자 본논문은 년 월 일 금 노동패널자료설명회워크샵에서발표될내용의일부분이다 - 31 -
민인식 / Revisiting Panel Data Analysis (1) : Stata 와 R 코딩 패널데이터개요와유형 패널데이터 는멀티레벨 의한종류라고말할수있 다 멀티레벨데이터는상위레벨 과하위레벨 의 구조로 되어있는경우가대표적인예이다 상위레벨내에속하는하위레벨관측치로구 성되어있다 학교 상위레벨 에속한학생 하위레벨 들을예로들수있다 패널데 이터는상위레벨이개체 이고하위레벨이그개체를관찰한시점 으 로구성된 이다 그림 은상위레벨은가구 이고하위레벨은가구레벨을조사한시점 으로구성된패널데이터예시이다 그림 1. 패널데이터예 그림 에서는 에서구축한가 구레벨패널데이터의일부분을보여준다 패널그룹을정의하는가구 변수 와시간변수 가반드시데이터내에존재해야한다 그림 2. 가구레벨패널데이터 1) 패널데이터가아닌멀티레벨데이터인경우에는상위레벨을지정하는 id 변수만있어도된다. - 32 -
The Korean Journal of STATA 제 5 권제 1 호 그룹 는 로가구수는 개이고시간 는 로각가구가 년씩조사되었다고가정하면전체표본의수는 로계산할수있다 패널그룹 내시간관측치구성에따라패널데이터는균형패널 과불균형패널 로구분할수있다 균형패널은각패널그룹이 개씩관측치를가지고있는경우이다 그림 에서확인할수있듯이 번은모두 까지 년씩응답한결과로구성되어있다 불균형패널은특정시점에서는모든패널그룹 가조사된것은아니고제외된패널그룹이있다 따라서불균형패널에서는표본의수는다음과같이쓸수있다 아래의식에서 는패널그룹 가가지는시간관측치의수로정의한다 시간갭 을기준으로패널데이터구조를나누면시간갭이있는경우 와없는경우로구분할수있다 패널그룹내시간관측치가연속적으로존재하면 시간갭이없는패널데이터이다 시간갭이있는패널데이터의예는특정가구가 조사응답을건너뛰었다가다시패널에복귀하는경우이다 그림 의예제에서 은 에서응답하지않고 시점에다시패널에복귀하였 다는것을알수있다 시간갭이있는패널데이터에서차분변수를만들때유 의해야한다 소득의 차차분변수는다음과같이정의할수있다 시간갭이 없는 은차분된값이 번계산된다 그러나시간갭이있는 은 에서차분값이결측치 가된다 에서 차년도 에서 차년도 을차분하는실수를할수있음에유의해야한다 - 33 -
민인식 / Revisiting Panel Data Analysis (1) : Stata 와 R 코딩 그림 3. 시간갭이있는패널데이터 패널그룹의수 과조사시점의수 의상대적크기를비교하여 과 로구분할수도있다 패널데이터는 로패널그 룹의수가각패널이가지는시간관측치의수보다훨씬많은경우이다 주로가 구나가구원서베이데이터에서관찰되는패널데이터이다 노동패널과같은데이 터는대표적인 패널데이터이다 반면 패널데이터는 로패널 그룹의수가관측시점의수보다적은경우이다 장기간축적된 국가패널 데이터의그예가될수있다 패널데이터는시간흐름에따른개체의변 화를분석하는데있어서많은정보를가지고있다 반면 패널에서는특정시점에서많은개체정보를가지고있기때문에개체이질성 을고려하는분석에유용하다 패널데이터를다루는통계패키지에서는주어진데이터가 패널데이터 임을먼 저알려주어야한다 가령 에서는다음과같이 또는 명령어를사 용한다 그림 에서는 코드의예시를보여준다 명령어다음에패널그룹그룹변수와시간변수를순서대로입력한다 패널그룹변수가문자변수 일수없고반드시숫자변수 인경우에만 명령문 실행이가능하다 실행결과를살펴보면 불균형패널 이면서시간갭이가진패널데이터임을확인할수있다 을사용하더라도같은결과를얻는다 은패널데이터뿐아니라멀티레벨데이터에서사용될수있는장점이있다 그림 예제와같이 다음에상위레벨변수 만지정하는것도가능하다 - 34 -
The Korean Journal of STATA 제 5 권제 1 호 그림 4. tsset 과 xtset 명령어 : Stata. use klips_final, clear. tsset hhid wave panel variable: hhid (unbalanced) time variable: wave, 15 to 19, but with gaps delta: 1 unit. xtset hhid panel variable: hhid (unbalanced) 그림 에서는 코드예제를제시한다 에있는명령어를이용해야 한다 명령어가 에 과같다고생각할수있다 옵션 에서패널그룹변수와시간변수를지정한다 명령어를통해패널데이터의구조와표본크기에대해이해할수있다 그림 패널데이터 코드예제 library(haven) library(plm) klips_final<-read_dta(file="klips_final.dta") klips_final<-pdata.frame(klips_final, index=c("hhid","wave")) > pdim(klips_final) Unbalanced Panel: n = 7633, T = 1-5, N = 34322 패널데이터구축 데이터는년도별로조사된결과를가구 가구원그리고부가조사데이 터로구성되어있다 년도별데이터를병합하여하나의패널데이터로만들기위해서는아래와같이두가지방법을활용할수있다 - 35 -
민인식 / Revisiting Panel Data (1) 에서 명령어의활용 가구레벨 차년도데이터에서 가구입주형태 변수가포 함된패널데이터를만드는예제를그림 과그림 에서제시한다 그림 에서는 개년도조사데이터를아래쪽으로계속추가시키면패널데이터가완성된다는 것을보여준다 를이용하여패널데이터로만들기위해서는 변수이름을 입주형태 으로동일하게미리코딩해두어야한다 그림 6. append 명령어 wave=15 wave=16 wave=17 wave15 ~ wave17-36 -
The Korean Journal of STATA 제 5 권제 1 호 그림 7. append 코드예제 forvalues j=15/17 { use klips`j'h, clear keep hhid`j' h`j'1406 ren hhid`j' hhid ren h`j'1406 h1406 gen wave=`j' tempfile file`j' save `file`j'', replace } use `file15', clear forvalues i=16/17 { append using `file`i'', force } drop if hhid==. order hhid wave sort hhid wave save klips_h1406, replace 에서 명령어활용 노동패널홈페이지에서제공하는 패키지를다운로드받은후설치 한다 연구자가원하는변수와 를선택하여패널데이터셋트로만들수있 다 자세한설치와사용방법에대해서는민인식 또는 유저가이 드를참고할수있다 그림 에서가구주나이 와입주형태 변수를 에서가져와패널데이터로만들는예제코드를보여준다 그 림 의 예제코드에비해간단하게 줄코드만을이용하여그림 과같은결과를얻을수있다는장점이있다 2) 민인식 (2018) 에서는 smart_klips 의새로운버전인 smart_klips_v2 패키지를소개하고있다. - 37 -
민인식 / Revisiting Panel Data (1) 그림 예제코드 smart_klips h_hage, wave(15 16 17 ) smart_klips_add h1406,addtype(h) wave(15 16 17 ) 초보자를위해 패키지는그림 와같은 를제공하고있다 그리고 명령어를 를통해실행할수있다 그림 9. smart_klips dialog box 을이용하여패널데이터를구축하는코드는따로소개하지않는다 대신 에서만들어저장한패널데이터를 에서불러와서사용하도록한다 - 38 -
The Korean Journal of STATA 제 5 권제 1 호 기초통계분석 패널데이터에있는 변수평균과분산은다음과같이전체평균과각그룹 별평균 으로구분할수있다 식 의 은편차 의합이기때문에항상 이나온다 전체평균 식 식 식 의분산역시평균과같이세가지유형을계산할수있다 분산은 시간불변변수 에서는 이기때문에항상 이된 다는것을확인할수있다 분산은패널그룹간차이라고이해할수있으면 분산은패널그룹내에서관찰된시점간차이로이해할수있다 따라서 분산이 분산보다크다면패널그룹간 변수의차이가패널그룹내 변수의차이가보다더크다고이해한다 분산 식 분산 식 분산 식 에서 명령어를이용하여 가구소득 변수의평균과분산 계산결과를그림 에서보여준다 은 인 과같고 이된다 3) 좀더자세한패널데이터기초통계분석내용은민인식 (2012) 을참고할수있다. - 39 -
민인식 / Revisiting Panel Data (1) 그림 10. xtsum 명령어 특정가구에서관찰한소득은시점간양의상관관계가존재할수있다 이를 즉패널그룹내계열상관계수 라고부른다 그룹내 시점과 시점의상관계수는다음과 같이주어진다 식 의계열상관계수는 와 의차이에의존하지않는다고가정 한다 임의의두시점간상관계수는 로동일하다는 으로가정하고계산한다 식 에서는 또는 명령어를이용하여 을계산할 수있다 그림 에서는 명령문실행결과를보여준다 을 으로해석한다 가구내시점간가구소득의상관계수는 로양의상관관계가강하게나타난다 그림 11. intra-class correlation. icc h_inc_total hhid Random effects: hhid Number of targets = 5863 Number of raters = 5 -------------------------------------------------------------- h_inc_total ICC [95% Conf. Interval] ---------------------+---------------------------------------- Individual.6017276.5907317.6126975 Average.8830987.8783.8877641 -------------------------------------------------------------- F test that ICC=0.00: F(5862.0, 23452.0) = 8.55 Prob > F = 0.000-40 -
The Korean Journal of STATA 제 5 권제 1 호 범주형변수 의기초통계량은빈도 를계산하여 보여줄수있다 횡단면데이터에서 또는 명령어를사용할수 있지만패널데이터에서는 을계산하기위해 명령어 를사용한다 그림 에서는 주택점유유형 에대한 명령문실행결과를보여준다 는전체표본에서각범주의빈도를계산한다 는가구기준으로계산한빈도이다 가령 자가 은전체 가구중에서 가구는조사기간 동안 번이라도자가에 거주한적이있다는의미이다 전세경험 이있는가구수는 가구이 다 는가구 의시점내에서범주변화를측정한값이다 자가 경험이있는가구는전체조사기간의 기간동안자가에계속거주하였다 조사기간이 년 이면 년 년이된다 년동안자가에계속거주해왔다고해석한다 값이 에가까울수록그범주를지속적으로유지할가능성이크다고이해할수있다 그림 12. xttab 명령어 패널데이터는시간흐름에따라조사되는구조이기때문에전이확률 을계산할수있다 전이확률은식 과같이정의된다 시점에서 상태에있는가구가다음기인 시점에서는 상태로바뀌는확률이다 에서는 명령어를이용하여전이확률을계산할수있다 Pr 식 그림 에서는 입주형태 변수의 개범주에대한전이확률계산결과를 보여준다 시점에자가 였던가구는다음기인 시점에서여전히자가일확률은 이다 자가에서전세로이동한가구는 이다 자가지속성비율이매우높다는것을이해할수있다 또다른측면에서해석하면전이확률은범주형변수의계열상관 이라고볼수있다 - 41 -
민인식 / Revisiting Panel Data (1) 시점에서전세인가구는다음기인 시점에서자가로이동한가구비율은 이다 그림 13. xttrans 명령어 그림 의 결과해석에서주의할점이있다 패널데이터가시간갭을가지고있을수있다 가령특정가구가 제외 와같이 개시점에서조사된다면 는 의 시점을 로간주하는 문제가생길수있다 식 과같이 시점과 시점과전이확률을정확하게계 산하기위해서는 명령문을실행하기전에 명령문을먼저실행하여 시간갭을결측치로채워준후 명령어를실행한다 그림 와그림 의 실행결과는큰차이가없다는것을확인할수있다 그림 14. tsfill과 xttrans 명령문. tsfill. xttrans h1406 입주형 입주형태 태 1 2 3 4 Total ---------+-----------------------------------------+---------- 1 97.24 1.63 0.64 0.49 100.00 2 9.52 84.93 4.43 1.11 100.00 3 3.75 4.15 89.75 2.35 100.00 4 6.13 5.14 8.56 80.17 100.00 ---------+-----------------------------------------+---------- Total 61.28 17.79 15.46 5.47 100.00-42 -
The Korean Journal of STATA 제 5 권제 1 호 패널데이터는변수의횡단면특성과시계열특성을동시에포함하고있기때 문에시간흐름에따른변화를그래프로보여줄수있다 본장에서는패널데이터에서사용할수있는그래프관련명령어를소개한다 패널그룹의년도별소득변화를파악하기위해패널라인그래프를작성할수 있다 에서 명령어를사용한다 명령문에서 축에표현하고자 하는변수만지정하면된다 축은자동으로시간변수가지정된다 예제데이터에가구 가매우많기때문에 인가구에대해서만그래프를작성한다 그림 15. xtline 명령어 : separate graphs d 서베이차수 그림 에서는 명령문에서 옵션을사용한다 한평면에 개의 그래프를동시에표현한다 따라서시간에흐름에따라가구소득변화 뿐아니라가구간 소득수준을비교할수있다 그 림 를통해가구소득변수는가구내에서시간에따라변화가있고가구간소득격차도존재한다는것을알수있다 - 43 -
민인식 / Revisiting Panel Data (1) 그림 16. xtline 명령어 : overlaid graph 17 18 19 서베이차수 hhid = 1 hhid = 2 hhid = 4 hhid = 6 hhid = 9 그림 에서는그림 와같은그래프를그리기위해서 코드를제시한다 의 명령문을사용한다 그림 17. 패널라인그래프 : R 코드 library(lattice) klips_final$hhid1<-as.numeric(klips_final$hhid) x y p l o t ( l o g ( h _ i n c _ t o t a l [ h h i d 1 < = 5 ] ) ~ w a v e [ h h i d 1 < = 5 ], group=hhid1, type="l", data=klips_final) - 44 -
The Korean Journal of STATA 제 5 권제 1 호 로그가구소득 과연령 변수의 의관계를파악하 고자그림 을제시한다 축과 축에해당하는변수는식 과식 와같이 을적용한결과이다 에서 명령어를이용하면원변수를 변수로만들어준다 은 변수와 변수의단순선형회귀분석결과이다 변수간선형관계가 분명하다면가구내 패널그룹내 에서가구주나이가증가하면가구소득이증가한다고해석할수있다 식 식 그림 18. 산포도와 fitted line: within-transformation 변수 snapshot save global snum=r(snapshot) xtdata, fe clear twoway (scatter lincome h_hage,msize(vsmall)) (lfit lincome h_hage) 그림 에서는 변수를이용하여산포도와 그래프 를제시한다 축에해당하는변수는로그가구소득의 변수 이고 축에해당하는변수는가구주나이의 변수이다 식 과식 에 공식을제시한다 에서 명 - 45 -
민인식 / Revisiting Panel Data (1) 령어를이용하면원변수를 변수로만들어준다 그림 에서 우하향하는직선으로추정된다면가구주나이가높은가구일수록가구소득이낮아진다고해석할수있다 즉가구간 분석결과를제시한것이다 식 식 그림 19. 산포도와 fitted line: between-transformation 변수 snapshot restore $snum xtdata, be clear twoway (scatter lincome h_hage,msize(vsmall)) (lfit lincome h_hage) 참고문헌 민인식 를활용한노동패널실증분석 년한국노동패널조사데이터설명회자료집 민인식 패널데이터분석 제 판 서울 지필미디어 민인식 버전 소개및활용 제 권 호 - 46 -
The Korean Journal of Stata 제 5 권 1 호 2018. 6. pp.61-73 와 코딩 요약 본논문에서는패널데이터를이용한선형회귀모형추정방법에대해설명한다 모든패널그룹에서상수항과기울기가동일하다고가정하는 모형에대해설명한다 선형회귀모형에대한첫번째 추정량은오차항에대해 가정을하는 추정에대해설명한다 두번째추정량은오차항의이분산성 계열상관 그리고 을가정하고추정하는패널 추정에대해설명한다 마지막 으로미시패널데이터구조에서주로사용할수있는패널 추정에대해설명한다 각추정방법에대한 와 코드를제시하고있다 주제어 패널 패널 교신저자 본논문은 년 월 일 금 노동패널자료설명회워크샵에서발표될내용의일부분이다 - 61 -
민인식 / Revisiting Panel Data Analysis (2) : Stata 와 R 코딩 패널데이터는하나의개체 를시간에따라반복적으로조사한관측치로 구성되어있다 따라서각관측치는하첨자 에의해구분된다 는패널그룹이 고 는 그룹내시간에대한하첨자이다 주어진패널데이터에기초한선형회귀모형은다음과같이표현할수있다 식 이고 식 회귀모형에서주요가정은다음과같다 가정 이고 이다 즉모든패널그룹이서로같은상수항과기울 기모수 를가진다고가정한다 가정 불편추정량 을얻기위필요한 이다 또는 즉오차항에대해외생적 인설명변수를가정한다 가정 오차항의분산역시패널그룹 에대해동분산성 를가진다 또한패널그룹 내에서 이존재하지않는다 으로가정한다 식 의회귀모형에서가정 가정 이모두만족하는경우에는모든 를 하여 추정한결과 는일치추정량이면서효율적추정량이 된다 그러나패널데이터의속성에의해위가정의위배가발생할수있고그에대한문제를해결하기위해다양한 을활용할수있다 본논문에서는 데이터를이용하여패널데이터를구축한후패널선형회 귀모형을추정하는예제를보여주고자한다 본논문에서소개하는추정방법은 어떠한가정의위배와관련이있고그러한가정위배를해결하기위한접근방식 에대해설명한다 각추정방법에대한장단점을비교하여연구모형에필요한추정량을선택할수있도록돕고자한다 추정량 식 에서제시한패널선형회귀모형을추정하는첫번째방법은 추정량이다 가정 가정 의모두만족한다고가정하면 추 - 62 -
The Korean Journal of STATA 제 5 권제 1 호 정량은효율적이면서일치추정량이된다 모든패널그룹에대해상수항 와계수 가모두같다고가정하기때문에 모형이라고부른다 먼저 명령어와 차데이터를이용하여실습데이터 를완성한다 회귀모형은임금근로자의로그임금을추정하는 모형을설정한다 변수는임금근로자의월평균임금의로그값이고설명변수는 가구원의나이 나이제곱 현직장근무기간 년 배우자유무 남자여부 교육수준 회사규모로설정한다 smart_klips h_hsex h_hage h_kidage06 h_hmarital /// h_inc_total h_debt_total h_resid_type /// p_sex p_age p_edu p_married p_region /// p_wage p_firm_size p_job_begin p_employ_type, wave(12 13 14 15 16 17 18 19) keep if p_employ_type==1 // 임금근로자만선택한다. gen tenure=(ym(year,12)-p_job_begin+1)/12 replace tenure=. if tenure<0 recode tenure (60/max=.) * y 변수 : log(wage) gen lwage=log(p_wage) recode lwage (0=.) * x변수 : p_age, p_sex, p_edu, tenure, p_married, p_firm_size recode p_edu (1 2 =1) (3 4=2) (5 6=3),gen(edu) recode p_firm_size (1 2=1) (3 4=2) (5 6=3),gen(firm_size) recode p_married (1 3=0) (2=1),gen(married) rename p_age age recode p_sex (1=1) (2=0), gen(male) save klips_example1, replace 위예제데이터를이용하여 추정량을얻기위해 에서 명령어를사용한다 - 63 -
민인식 / Revisiting Panel Data Analysis (2) : Stata 와 R 코딩 그림 에서 추정결과 use klips_example1, clear tsset pid wave reg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size Source SS df MS Number of obs = 35,362 -------------+---------------------------------- F(9, 35352) = 4460.48 Model 7318.6434 9 813.1826 Prob > F = 0.0000 Residual 6444.96491 35,352.182308354 R-squared = 0.5317 -------------+---------------------------------- Adj R-squared = 0.5316 Total 13763.6083 35,361.389231309 Root MSE =.42698 ------------------------------------------------------------------------------ lwage Coef. Std. Err. t P> t [95% Conf. Interval] -------------+---------------------------------------------------------------- age.0695166.0013388 51.92 0.000.0668925.0721407 c.age#c.age -.0008165.0000143-56.91 0.000 -.0008446 -.0007884 tenure.0227507.0003917 58.08 0.000.0219829.0235185 1.male.4134277.0048202 85.77 0.000.4039799.4228755 edu 2.1732907.0079584 21.77 0.000.1576921.1888893 3.4164072.008657 48.10 0.000.3994393.4333751 1.married.0724475.0056679 12.78 0.000.0613382.0835567 firm_size 2.1655044.00548 30.20 0.000.1547635.1762454 3.3207417.0063246 50.71 0.000.3083454.3331381 _cons 3.0388.0292685 103.83 0.000 2.981433 3.096167 ------------------------------------------------------------------------------ - 64 -
The Korean Journal of STATA 제 5 권제 1 호 상수항과기울기계수는모든가구원에서서로같게주어지는 모형추정결과로해석한다 따라서 에대한해석은다음 과같다 모든가구원은개인 시점 년도 과무관하게근무기간이 년증가하면 다른조건이일정할때 평균적으로임금이 높아진다고해석한다 식 의오차항 가그룹내에서서로독립이라는가정을완화할수있다 즉 으로가정하고표준오차 를다시계산할수있 다 다음과같이 옵션을추가하여 를제시할수있다 추정계수는그림 과같다 그러나 만새롭게주어진다 따라서 와 따라서유의성에대한판단이달라질수있다 그러나이러한 는 에서만올바른 가된다 또한추정계수는여 전히오차항의 을가정하고계산한값이기때문에효율적추정량 이되지못하는단점이있다 reg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, vce(cluster pid) Linear regression Number of obs = 35,362 F(9, 8509) = 1282.81 Prob > F = 0.0000 R-squared = 0.5317 Root MSE =.42698 (Std. Err. adjusted for 8,510 clusters in pid) ------------------------------------------------------------------------------ Robust lwage Coef. Std. Err. t P> t [95% Conf. Interval] -------------+---------------------------------------------------------------- age.0695166.002612 26.61 0.000.0643964.0746368 c.age#c.age -.0008165.0000285-28.60 0.000 -.0008724 -.0007605 tenure.0227507.0008202 27.74 0.000.0211428.0243586 1.male.4134277.0094653 43.68 0.000.3948734.4319819 < 결과중략 > ------------------------------------------------------------------------------ - 65 -
민인식 / Revisiting Panel Data Analysis (2) : Stata 와 R 코딩 에서 추정결과를얻기위해서는그림 코드를사용할수있다 추정량을얻는 명령어를사용해도되고 명령어에서 옵션을주어도같은결과를얻는다 를얻기위해서는 를호출한후 명령문을작성한다 지면제약상 의추정결과를제시하지않았지만정확히 추정결과와같다는것을확인할수있다 그림 에서 추정결과 library(haven) library(plm) klips_final<-read_dta(file="klips_example1.dta") klips_final<-pdata.frame(klips_final, index=c("pid","wave")) klips_final$edu<-as.factor(klips_final$edu) klips_final$married<-as.factor(klips_final$married) klips_final$male<-as.factor(klips_final$male) klips_final$firm_size<-as.factor(klips_final$firm_size) # lm 명령어 pols<-lm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final) summary(pols) #plm 명령어 pols1<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final, model="pooling") summary(pols1) # cluster-robust SE library(lmtest) coeftest(pols1,vcov=vcovhc(pols1,type="hc0",cluster="group")) - 66 -
The Korean Journal of STATA 제 5 권제 1 호 추정량 앞선 추정에서는패널데이터의가장기본적인특징을고려하지 않는문제가있다 동일한개체를시간에따라반복적으로관찰하는경우식 의 종속변수 는그룹내상관관계를가지고있을가능성이크다 즉 라고가정하는것이일반적이다 에 서는모든 에대해서오차항의동분산성을가정하고있다 즉 로가정한다 그러나패널그룹 에따라이분산성이존재할가능성이 크다 로가정한다 추정량대신패널데이터의속성을고려한오차항의이분산성또는계열상 관 을고려한 추정량을사용하면 보다더효율적인추정량을얻게된다 오차항가정 모든 에대해오차항이동분산성을만족하고 을가정한다 즉 오차항을가정한다 이경우는 추정량에문제가없다 오차항가정 오차항이패널그룹 에따라이분산성을가진다 오차항가정 오차항이 을가진다 즉같은시점 에서서로다른그룹 와 는서로상관관계를가진다 오차항가정 오차항이 계 을가진다 계열상관의특징은두시점이멀어질수록계열상관정도가점차줄어든다 에서는오차항 에대해위가정 가정 를적용한패널 추정량을얻을수있다 명령어를사용한다 물론가정 을적용한 추정결과는 와같다 에서는 명령어를사용함에있어패널그룹의수에제약이있다 패널그룹의수가 가수용할수있는기술적인행렬크기 를초과하면추정결과를얻을수없다 따라서아래예제에서는개인 값이 이하인표본으로한정한다 이경우패널그룹의수는 4) 본절에대한자세한설명은민인식 (2015) 를참고하라. - 67 -
민인식 / Revisiting Panel Data Analysis (2) : Stata 와 R 코딩 명이된다 옵션은오차항가정 을의미한다 따라서그림 의 추정결과와같다 옵션은그룹이분산성을가정한 추정결과이다 은 을가정한 추정결과이다 주의할 점은균형패널 에서만추정된다 따라서본예제데이터는불균형 패널이기때문에추정결과를얻을수없다 마지막명령문에서 옵션은 오차항가정 에해당한다 추정된 계상관계수는 임을확인할수있 다 주의할점은 옵션을사용하기위해서는 이없는패널데이 터여야한다 그러나본예제데이터는 이있기때문에추정결과를얻 을수없다 다만 옵션을사용하면 을무시하고관측치가정렬된 순서를 로간주하여추정결과를제시해준다 는오차항에대한가정이올바르게설정한경우에만효율적추정량이된다는점에유의해야한다 앞서언급하였듯이 는패널그룹의수가많다면추정에문제가있다 따라서 이고 인패널데이터구조에적절하다 use klips_example1, clear tsset pid wave keep if pid<=30000 xtgls lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, panel(iid) xtgls lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, panel(hetero) xtgls lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, panel(corr) xtgls lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, corr(ar1) force 5) 표준오차에서사소한차이가있지만 nmk 옵션을사용하면정확히서로같다. 6) 가령, 2009 년다음에 2011 년표본이나오면 2011 년시점에서 시점은 2009 년으로간주한다. - 68 -
The Korean Journal of STATA 제 5 권제 1 호 에서패널 추정결과를얻기위해서는 명령어를사용할수있다 그러나 와같이오차항공분산 구조를미리가정할수는없다 오차항의공분산구조를잔차를이용하여추정하여사용한다 식 패널 추정을위한 코드는아래와같다 library(haven) library(plm) klips_final2<-read_dta(file="klips_example2.dta") klips_final2<-pdata.frame(klips_final2, index=c("pid","wave")) klips_final2$edu<-as.factor(klips_final2$edu) klips_final2$married<-as.factor(klips_final2$married) klips_final2$male<-as.factor(klips_final2$male) klips_final2$firm_size<-as.factor(klips_final2$firm_size) gls1<-pggls(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final2, model="pooling") summary(gls1) 패널 추정량 패널선형회귀모형의오차항 가 오차항이아닌경우 절에서는패널 추정량을사용할수있다고설명하였다 본절에서는오차항의이분산성 그 룹내계열상관과같이오차항의기본가정이위배되는경우 추정대신패널 추정량을활용하는예를제시한다 패널 추정량은특히 이면서 의패널데이터구조에서주로 활용된다는점에서패널 와차이가있다 패널 는그룹내오차항의계 열상관 에대한다양한가정을할수있다는장점이있다 오차 항의이분산성과 가정에서는추정할수없다는단점이있다 - 69 -
민인식 / Revisiting Panel Data Analysis (2) : Stata 와 R 코딩 패널 추정에선종속변수의기댓값은다음과같이설명변수의선형결합의 함수로표현할수있다 를 이라고부른다 종속변수 와같이분포모수 를가진특정한분포 를따른 다고가정한다 를 이라고부른다 패널선형회귀모형에서는 는 이되고 는정규분포로가정하면된다 식 또는 패널 추정량에서오차항이 가아닌경우오차항의구조를 상관계수행렬 로구조화한다 특히패널데이터에서는그룹 내의상관관계구조를가정한다 주로사용하는상관관계구조는다음 가지이다 그룹내계열상관이없다고가정한다 가정과같다 현재시점과과거모든시점과상관관계는 로일정하다 이라고부른다 현재시점과과거시점의상관관계는과거시점이멀어질수록점차줄어든다 이라고부른다 현재시점과과거시점의상관관계에대해미리특정한구조를가정하지않는다 이라고부른다 에서는 또는 명령어를이용하여패널 추정결과를얻을 수있다 패널그룹의수에대한제한이없고불균형패널데이터일지라도추정결 과를얻을수있다 그러나 오차항구조를가정하는경우 이있 다면여전히추정에문제가있을수있다 명령문에서는 옵션을사용하 면패널 추정결과를얻을수있다 은 이고 은 을사용하고있다 옵션에서그 룹내오차항의상관관계구조를가정한다 먼저 는 오차항을가정한 다 따라서이결과는 와같다 는 구조를 가정한다 은 상관관계를가정한다 따라서 이있는패 - 70 -
The Korean Journal of STATA 제 5 권제 1 호 널그룹은제외되고 이없는패널그룹만추정표본 으로사용한다 또한패널그룹 에서 가 개만있다면그패널그룹 역시제외된다 패널 와같이 옵션을사용하면 이있더라도 추정표본에포함한다 옵션은오차항의상관관계구조를미리가정하지않고잔차를이용하여추정한구조를사용한다 추정후 행렬에추정된상관계수행렬이주어진다 그결과를확인하고자한다면 명령문을이용한다 그림 명령문 xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, pa corr(ind) xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, pa corr(exc) xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, pa corr(ar1) xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, pa corr(ar1) force xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, pa corr(unstructured) mat list e(r) // working matrix 대신 명령문을이용하더라도그림 과같은결과를얻을수있다 명령문은아래그림 에서제시한다 그림 명령문 xtgee lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, link(identity) family(gaussian) corr(ind) xtgee lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, link(identity) family(gaussian) corr(exc) xtgee lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, link(identity) family(gaussian) corr(ar1) xtgee lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, link(identity) family(gaussian) corr(ar1) force xtgee lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, link(identity) family(gaussian) corr(unstructured) mat list e(r) // working matrix - 71 -
민인식 / Revisiting Panel Data Analysis (2) : Stata 와 R 코딩 에서패널 추정결과를얻기위해서는 를먼저설치해 야한다 명령어를이용하여패널 추정결과를얻을수있다 옵션에서패널그룹변수를지정하고 옵션에서그룹내상관계수구조를가정한다 그림 에서패널 추정 library(geepack) klips_final<-read_dta(file="klips_example1.dta") klips_final<-pdata.frame(klips_final, index=c("pid","wave")) klips_final$edu<-as.factor(klips_final$edu) klips_final$married<-as.factor(klips_final$married) klips_final$male<-as.factor(klips_final$male) klips_final$firm_size<-as.factor(klips_final$firm_size) # 결측치를미리제거해준다. klips_final3 <- na.omit(subset(klips_final, select = c(lwage, age, tenure, edu, married, male, firm_size, pid))) gee1 <- geeglm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, id=pid, data=klips_final3,family=gaussian, corstr="ind") summary(gee1) gee2 <- geeglm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, id=pid, data=klips_final3,family=gaussian, corstr="exchangeable") summary(gee2) gee3 <- geeglm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, id=pid, data=klips_final3,family=gaussian, corstr="ar1") summary(gee3) gee4 <- geeglm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, id=pid, data=klips_final3,family=gaussian, corstr="unstructured") summary(gee4) - 72 -
The Korean Journal of STATA 제 5 권제 1 호 참고문헌 민인식 패널데이터분석 제 판 서울 지필미디어 - 73 -
The Korean Journal of Stata 제5권 2호 2018. 12. pp. 1-16 와 코딩 요약본논문에서는패널선형회귀모형으로모형을소개한다추정방법으로고정효과와확률효과추정에대해자세히설명한다관찰된설명변수와상관관계여부에따라고정효과또는확률효과추정량이더적절할수있다특히내생성문제가있는모형에서는고정효과추정량만이일치추정량이된다뿐아니라까지고려한모형에대해서도설명한다각추정방법에대한와코드를제시하고있다 주제어 고정효과확률효과 교신저자 본논문은년월일금노동패널자료설명회워크샵에서발표될내용의일부분이다 - 1 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 추정량 패널그룹의이질성을고려하는방식으로오차항구조를와로구성하는모델링을선택할수있다식에서는그러한예를보여준다 식 이고 식에서 는종속변수 에영향을미치는이고시간불변오차항에해당한다 역시영향을미치는이고시간가변오차항에해당한다식은식와같이바꾸어쓸수있다식에서는상수항을 로표현할수있으며상수항이그룹 에따라달라진다는것에의해설명되고있다다만기울기모수인 는모든패널그룹에적용되는단하나의 를추정하는것이목적이다식또는식를또는이라고부른다여기서는상수항이 에따라달라질수있다는것을의미한다 식 식을추정하는첫번째방법으로고정효과추정량 을 사용할수있다 고정효과 의미는그룹이질성 에해당하 는 를확률변수 가아니라고추정해야할모수 로간주하는의미이다 고정효과추정량의장점은 를허용한다 즉오차항 와관찰된설명변수 가상관관계즉 내생성 이있더라도여전히 와 에대한일치추정량을구할수 있다 고정효과추정을위해다음두가지접근법을사용한다 첫째 를더미변 수로만들어직접그값을추정한다 둘째 를모형에서제거하여직접추정할 필요가없는모형에서 와 를추정하는것이다 그룹이질성을더미변수로바꾸어모형에포함하는 추정이고정효과추정량이될수있다 식의 를그룹더 미 로생성한후모형에포함한다 - 2 -
The Korean Journal of STATA 제5권제2호 식 식에서 오차항 로가정한다 즉오차항의이분 산성과자기상관이없다고가정한다 이러한가정하에서식에대한 추정 량은불편추정량이면서효율적인추정량이된다 주의할점은패널그룹 이너 무많다면그룹더미를포함하는것이 하지않을수있다 에서는그림과같이 연산자를이용하여그룹더미를모형에포함할수 있다 예제데이터에서는그룹의수가 명으로매우많다 지면제약을고려하 여그룹의수를줄인후추정결과를제시한다 추정량을계산하는 명령어를사용하고 i.pid를관찰된 변수에추가하였다 변수의추정 계수인 은임금에영향을미치는개인이질성그룹더미변수을통제하였을 때 의년증가는임금을 증가시킨다고해석할수있다 주의할점은 그리고 변수이다 이변수들은 변수에해당한다 패널고 정효과추정에서는시간불변변수의추정계수는얻을수없다 그이유는시간불 변효과는모두 에포함되기떄문에 와 와개별변수의추정계수는 되지않는다 다만그림에제시된 과 변수의추정계수를그대 로 하는실수를하지않아야한다 를추정하는또다른명령문으로 는 를사용할수있다 에서는 absorb(pid) 옵션의의미는패널그룹변 수를더미변수로포함하게된다 앞선 명령문과같은결과이지만 과 변수의추정계수가 로나타나는것이다른점이다 1) Stata 추정결과를살펴보면 male와 ed 변수의추정계수가주어진대신 pid 더미변수중에서 3 개더미변수가 omitted 로나타난다. - 3 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 그림 1. LSDV 추정: Stata use klips_example2, clear tsset pid wave keep if pid<=5000 reg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size i.pid Source SS df MS Number of obs = 241 -------------+---------------------------------- F(60, 180) = 24.79 Model 77.8723478 60 1.29787246 Prob > F = 0.0000 Residual 9.42380487 180.052354471 R-squared = 0.8920 -------------+---------------------------------- Adj R-squared = 0.8561 Total 87.2961527 240.36373397 Root MSE =.22881 ------------------------------------------------------------------------------ lwage Coef. Std. Err. t P> t [95% Conf. Interval] -------------+---------------------------------------------------------------- age.1098449.0350957 3.13 0.002.0405929.1790968 c.age#c.age -.0009032.0003589-2.52 0.013 -.0016115 -.000195 tenure.01847.0134338 1.37 0.171 -.0080379.0449779 1.male 1.094526.2092673 5.23 0.000.6815933 1.507459 edu 2.5721168.2408094 2.38 0.019.0969442 1.047289 3.8666698.2556837 3.39 0.001.362147 1.371193 1.married -.1459633.1142667-1.28 0.203 -.3714379.0795112 firm_size 2.1687814.0875329 1.93 0.055 -.0039412.3415041 3.1500092.1063945 1.41 0.160 -.0599317.3599501 < 이하생략> areg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, absorb(pid) 명령문에서는그림와같이또는명령어를사용할수있다의 i.pid와같이를설명변수에포함한다또한을사용하는경우에는옵션을추가한다명령문에서도출된추정결과와의추정결과는정확히일치한다는것을확인할수있다 - 4 -
The Korean Journal of STATA 제5권제2호 그림 2. LSDV 추정: R library(haven) library(plm) klips_final<-read_dta(file="klip_example2_r.dta") klips_final<-pdata.frame(klips_final, index=c("pid","wave")) klips_final$edu<-as.factor(klips_final$edu) klips_final$married<-as.factor(klips_final$married) klips_final$male<-as.factor(klips_final$male) klips_final$firm_size<-as.factor(klips_final$firm_size) lsdv<-lm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size+factor(pid), data=klips_final) summary(lsdv) lsdv1<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size+factor(pid), data=klips_final, model="pooling") summary(lsdv1) 고정효과추정방법중그룹이질성을더미변수화하는방법이외에 를제거 한모형에서 와 를추정할할수있다 대표적인방법은 추정량과차 분 추정량이있다 본논문에서는 추정에대해서설명한 다 는그룹별평균을계산하더라도여전히 가되기때문에식 에서는사라지게된다 식 에서 는제외되어있기때문에 이더라도식에대한 추정결과는 와 에대한일치추정 량이된다 식의 오차항 에대해 로가정하고 추정결과를얻게된다 식 그림에서는추정량을구하는명령문을제시한다명령어에서옵션을사용한다그림의추정결과에서확인할수있듯이그림의추정결과와정확히일치한다앞서설명하였듯이고정효과추정량에서는시간불변변수인과변수의추정계수는따로되지않는다그림 - 5 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 의맨아래에있는검정은고정효과의유무에대한가설검정결과이다즉그룹이질성이존재하지않는다면 라고말할수있다식에서 인지에대한검정결과이다귀무가설을기각하면고정효과추정량이적절하고귀무가설을기각하지못하면그룹이질성이없는추정량이적절하다고통계적판단을한다 그림 3. Within 추정: Stata xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, fe Fixed-effects (within) regression Number of obs = 241 Group variable: pid Number of groups = 55 R-sq: Obs per group: within = 0.1745 min = 1 between = 0.0011 avg = 4.4 overall = 0.0003 max = 8 F(6,180) = 6.34 corr(u_i, Xb) = -0.5919 Prob > F = 0.0000 ------------------------------------------------------------------------------ lwage Coef. Std. Err. t P> t [95% Conf. Interval] -------------+---------------------------------------------------------------- age.1098449.0350957 3.13 0.002.0405929.1790968 c.age#c.age -.0009032.0003589-2.52 0.013 -.0016115 -.000195 tenure.01847.0134338 1.37 0.171 -.0080379.0449779 1.male edu 0 (omitted) 2 0 (omitted) 3 0 (omitted) 1.married -.1459633.1142667-1.28 0.203 -.3714379.0795112 firm_size 2.1687814.0875329 1.93 0.055 -.0039412.3415041 3.1500092.1063945 1.41 0.160 -.0599317.3599501 _cons 1.912402.828246 2.31 0.022.2780819 3.546723 -------------+---------------------------------------------------------------- sigma_u.80279296 sigma_e.228811 rho.92486776 (fraction of variance due to u_i) ------------------------------------------------------------------------------ F test that all u_i=0: F(54, 180) = 14.48 Prob > F = 0.0000-6 -
The Korean Journal of STATA 제5권제2호 그림에서는의에대응하는명령문을제시한다명령어에서옵션으로을추가한다지면제약상추정결과를제시하지않았지만와마찬가지로와변수의추정계수는주어지지않는다그림의마지막에제시된검정결과를얻기위해서는추정결과와추정결과에대해검정을실시한다명령어를사용한다명령문내에추정결과와추정결과를저장한이름을반드시순서대로사용해야한다검정결과를그림의검정과사소한차이가있다 그림 4. Within 추정: R within<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, summary(within) data=klips_final, model="within") pols<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, pftest(within, pols) data=klips_final, model="pooling") 추정량에비해고정효과추정량의장점은관찰되지않는요인에의해내생성이존재하더라도여전히일치추정량을얻을수있다따라서에대해한결과를얻을수있다단점은앞서보여주였듯이과변수와같이시간불변 변수의추정계수를얻을수없다또한그룹의수만큼변수를추가적으로사용하는모형이기때문에자유도감소가발생한다따라서추정량의표준오차가증가하고유의성이하락할가능성이있다 추정량 다 식에서제시한 모형에서오차항은다음과같이쓸수있 확률효과모형에서는 는고정된모수가아니고확률변수 로가정한다 따라서패널그룹별상수항 와같이확률변수가 된다상수항이확률변수이기때문에식모형을모형이라고 2) 순서를바꾸면전혀다른검정결과가제시된다. 3) 시간불변변수인 male와 ed 변수의계수를제약조건으로포함하느냐의차이이다. 4) 시간불변변수는아닐지라도거의시간불변변수에가까운설명변수의표준오차가매우커지고따라서유의하지않게나올가능성이있다. - 7 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 도부른다 식 그리고 이다 확률효과추정량이일치추정량 이되기위해서는 즉 가성립해야한 다시간불변오차항과관찰된설명변수간외생성이성립해야한다 식에서오차항구조하에서는 로쓸수있다 오차항동분산성은성립하지만그룹내상관관계 또는 는이아니라는것을쉽게증명할수있다 식와같이오차항의 이존재하기때문에 추정량을사용 할수없다 식 확률효과추정량의첫번째방법으로오차항의상관관계구조를가정한추정량을사용할수있다가제안한추정은 모형에서추정을적용한다 식 식의오차항 은이라는것을증명할수있다 이면추정량은추정량과같아지고 이면고정효과추정량과같아지는것을쉽게이해할수있다 이되거나 이면 에가까워진다확률효과추정에서는 이면시간불변설명변수의추정계수를얻을수있는장점이있다추정을사용하는대신확률효과추정량을얻는방법은 5) 따라서 이기때문에 는 group heterogeneity 에대한모평균 (population mean) 으로해석한다. - 8 -
The Korean Journal of STATA 제5권제2호 추정을사용할수있다 추정을위해서는오차항 와 에대 한정규분포 를가정해야한다 확률효과추정량의장점은시간불변설명변수에대한추정계수를얻을수있 다 또한 고정효과와달리자유도손실이발생하지않는다 따라서고정효과에 비해더많은표본수와변수정보를사용하기때문에더효율적인추정량이된 다 다만확률효과추정량이일치추정량이되기위해서는 를가정해야한다 에서 추정결과를구하기위해서는 명령문에서 옵션을사용한 다 식에서제시한 추정결과를제시해준다 옵션에서는 을위한 을보여준다 임을알수있다 와 변수와같이시간불변설명변수의추정계수를얻을수있다는것을확인할수 있다 맨아래제시된 값은 의추정치이다 그림의고정효과추정결과 에비해대부분추정계수가통계적으로유의하다는차이를발견할수있다 추정결과를얻기위해서는 옵션대신 옵션을사용한다 와 추정 결과는표본크기 가커질수록서로같은값으로수렴한다 추정 결과의맨아래쪽에서는 검정결과가제시되어있다 검정의귀무가설은 다음과같다 위귀무가설이성립하면식의그룹내상관계수는이됨을알수있다따라서오차항의이존재하지않기때문에추정대신추정량을사용하면충분하다검정을통해확률효과추정량을선택할것인지추정량을선택할것인지에대한통계적결론을내릴수있다 - 9 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 그림 5. 확률효과추정: Stata xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, re theta Random-effects GLS regression Number of obs = 241 Group variable: pid Number of groups = 55 R-sq: Obs per group: within = 0.1259 min = 1 between = 0.5526 avg = 4.4 overall = 0.4624 max = 8 Wald chi2(9) = 92.04 corr(u_i, X) = 0 (assumed) Prob > chi2 = 0.0000 ------------------- theta -------------------- min 5% median 95% max 0.4785 0.4785 0.7078 0.7888 0.7888 ------------------------------------------------------------------------------ lwage Coef. Std. Err. z P> z [95% Conf. Interval] -------------+---------------------------------------------------------------- age.0887105.0210789 4.21 0.000.0473967.1300243 c.age#c.age -.0009668.000217-4.46 0.000 -.0013921 -.0005416 tenure.0216433.0068451 3.16 0.002.0082272.0350594 1.male.4221465.1168675 3.61 0.000.1930904.6512026 edu 2.269986.1504729 1.79 0.073 -.0249355.5649075 3.5968467.165715 3.60 0.000.2720512.9216422 1.married.009658.0881612 0.11 0.913 -.1631348.1824508 firm_size 2.1854374.0810426 2.29 0.022.0265968.344278 3.1538149.1003943 1.53 0.125 -.0429543.350584 _cons 2.427399.4787198 5.07 0.000 1.489125 3.365672 -------------+---------------------------------------------------------------- sigma_u.37440852 sigma_e.228811 rho.72807987 (fraction of variance due to u_i) ------------------------------------------------------------------------------ xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, mle nolog < 결과중략> LR test of sigma_u=0: chibar2(01) = 137.27 Prob >= chibar2 = 0.000-10 -
The Korean Journal of STATA 제5권제2호 확률효과추정량은 추정량중에서 가정결과와 거의일치한다 그이유는식에서제시된그룹내오차항상관관계구조가정 확히 구조와같기때문이다 이론적으로균형패널 이면 결과와 또는 결과 는서로일치하고불균형패널 일지라도표본크기가커지면 추정량과 추정량결과는거의같아진다 그림에서는확률효과추정결과를얻기위한 명령문을제시한다 명령 문에서 옵션을사용하면 추정결 과를제시한다 그림에서제시한 귀무가설에대한가설검정은 검정대신에서는 검정결과를얻는다 명령어 를이용하여 추정결과와비교하여귀무가설을검정한다 지면제약 상검정결과를제시하지않았지만 는 보다훨씬작은값이다 따라서 에서 검정과마찬가지로귀무가설을기각한다 추정량이 추정량보다적절하다고판단할수있다 그림의마지막명령어는 확률효과추정에대한 를얻는명령문이다 대신 를 설치한후 명령문을사용해야한다 옵션을지정하는것이중요하 다또한결측치를미리제거한데이터세트를만든후에추정에사용한다 그림 6. 확률효과추정: R re<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, summary(re) data=klips_final, model="random") pols<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final, model="pooling") plmtest(pols, effects="individual") # ML 추정 library(nlme) klips_final3 <- na.omit(subset(klips_final, select = c(lwage, age, tenure, edu, married, male, firm_size, pid))) fm1 <- lme(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, random=~1 pid, data=klips_final3) summary(fm1) - 11 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 모형 성 절과 절에서는그룹이질성 만을모형에포함하는 모형에해당한다 본절에서는그룹이질성뿐아니라시간이질 역시모형에서고려하는것이다 식 식에서 는 시점의모든패널그룹 가서로같은값을갖는다즉관찰되지않는시간특성에해당한다모형과같이 와 에대해고정효과로간주하거나확률효과로간주하고추정한다를허용하는경우즉 그리고 인경우에는고정효과추정량이일치추정량이된다그러나를가정하는경우는확률효과추정량이일치추정량이면서더효율적인추정량이된다이질성요인을모두고정효과로간주하는경우에는절에서이미설명하였듯이고정효과에대해더미변수로변환한후추정을하면된다 는 시점에대한더미변수이다식에대한추정량이추정량에해당한다추정대신변환후고정효과추정결과를얻는것도가능하다자세한내용은민인식최필선의장을참고할수있다 식 식의 와 에대해확률변수 로가정하면 모형이된다즉 분포이고 분포를따른다오차항의전 체분산그리고 은다음과같이계산된다 식 - 12 -
The Korean Journal of STATA 제5권제2호 식 위식에서보였듯이패널그룹 내에서 그리고 시점에서 이이아니기때문에 추정량또는 추정 량을사용한다 추정량의경우에는 그리고 에대해모두정규분포 를가정한다 추정을위한 의구체적인과정에대해서는민 인식최필선 장을참고할수있다 에서는 추정량을구하는명령어가따로없기때문에연구자 가직접패널그룹과시간에대해더미변수를생성한후 추정량을얻어야 한다 또는 명령문에서시간에대한더미변수만추가하는것도같은결 과를가져온다 그림의 i.year 부분이 에해당한다 그림 7. two-way FE : Stata reg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size i.pid i.year xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size i.year, fe 에서는여전히 의 명령문을여전히활용할수있다 고정 효과모형이기때문에 옵션을사용하며 으로 바꾸어준다 에서 만고려할때는 이라고쓰는 데 옵션을사용하지않으면자동으로 옵션이사용된다 그림에서두번째명령문은 와유사하게패널그룹과시간에대한더미변 수를포함해서 모형을추정하게된다 그림 8. two-way FE : R # within transformation twoway_fe<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final, effect="twoways", model="within") summary(twoway_fe) # LSDV 추정 : two-way effects twoway_fe1<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size+factor(pid)+factor(wave), summary(twoway_fe1) data=klips_final, model="pooling") - 13 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 모형에대한추정을위한명령문은대신명령문을사용해야한다에서설명하였듯이 추정량을사용할수도있고오차항분포에대해정규분포를가정하고추정결과를사용할수도있다에서는추정결과만얻을수있다 그림 9. two-way RE : Stata mixed lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size _all: R.pid _all: R.wave, nolog mle 그림 에서는 에대한 코드를제시한다 주의해야할점은 에서기본옵션인 을사용하는대신 를지정해야 한다불균형패널인경우 에서제시한 을이용하여 추정결과를얻는다 그림 10. two-way RE : R twoway_re<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final, effect="twoways", model="random", random.method = "walhus") summary(twoway_re) 검정 본소절에서는다시 또는 모형으로돌아간다 하우스만검정 을이용하여 와 모형선택을위한가설검정을실시할수있 다하우스만검정의귀무가설은 즉 이다 귀무가설을받아들인다면 와 중에서 모형을선택한다 그이유는 에서는 와 모두일치추정량이지만 추정량이 더효율적인추정량이기때문에 추정량을선택한다 귀무가설을기각 한다면 가존재하고따라서 추정량만일치추정량이 되기때문에 추정량을선택한다 하우스만검정의기본적인아이디어는다음과같다 귀무가설이맞다면 와 추정치모두일치추정량이기때문에서로 크게다르지않을것이다 귀무가설이기각된다면즉 라면 - 14 -
The Korean Journal of STATA 제5권제2호 추정치는추정치와유의하게다르다는것을확인한다검정통계량은와 추정에서얻은추정계수의차이를공분산행렬의차이로가중하여계산한다 에서는시간불변변수의추정계수를얻을수없기때문에시간가변변수에대 한추정계수만을이용하여하우스만검정통계량을계산한다 하우스만검정통계 량은근사적으로 분포를따른다여기서자유도 는 시간가변변수의수에해당한다또한하우스만검정은와모형식에서 시간가변오차항 가 가정을만족해야한다 만약 가정을만족하지못 한다면에서제시한를활용한다 에서하우스만검정결과를얻기위한코드는그림에서제시한다와 추정결과를얻은후 명령어를이용하여그결과를저장한다 명령에서저장한이름을와순서대로입력해야한다검정결과 가보다작으면귀무가설을기각한다기 각한다면모형이모형에비해적절하다고통계적판단을한다 그림 11. 하우스만검정: Stata xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, fe estimates store FE xtreg lwage age c.age#c.age tenure i.male i.edu i.married i.firm_size, re estimates store RE hausman FE RE * hausman RE FE // 순서를바꿔서는안된다. 그림에서는에서하우스만검정을위한명령문과그결과를해석한다명령문작성에서주의할점은에서는저장한결과를나열할때반드시와순서로위치해야한다그러나에서는순서를다르게쓰더라도같은검정결과를보여준다 그림 12. 하우스만검정: R fixed<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final, model="within") random<-plm(lwage ~ age+i(age^2)+tenure+edu+married+male+firm_size, data=klips_final, model="random") phtest(fixed, random) phtest(random, fixed) # 순서를바꿔도같은결과를얻는다. - 15 -
민인식 / Revisiting Panel Data Analysis (3) : Stata와 R 코딩 참고문헌 민인식 고급패널데이터분석서울지필미디어 - 16 -