본문 바로가기

Data Science

노동패널 data 구성 전처리 방법 정리

노동패널 data를 다운 받는다.

가구자료와 개인자료를 merge하고 merge한 가구자료를 append한다.

가구자료와 개인자료의 변수명을 바꾼다. 

2차조사 가구자료의 경우 변수명이 h02XXXX의 앞 3글자가 h02로 시작한다.

h는 가구자료라는 것을 의미하고 02는 조사차수를 의미한다.

개인자료의 경우 변수명이 p02XXXX로 되어 있다.

노동패널 data는 각 차수별로 파일이 따로 구성되어 있다. 


분석을 위해서는 각 조사차수의 data를 하나의 파일로 합쳐야 하기 때문에 각 파일마다 전처리를 해줘야 한다.


1. 변수명을 통일해야 한다.

h02XXXX의 경우 hXXXX로 바꿔준다 조사차수를 없애는 것이다.

*변수앞에 조사년도 p19, h19에서 19를 삭제

rename h09???? h????


2. 패널분석을 하기 위해서는 시간변수가 필요하다.

시간변수를 연도로 해서 생성한다.

*연도변수 생성 2차 조사는 1999년에 조사함

gen year = 1999

* year변수 라벨 생성

label variable year "조사연도"

* year변수를 변수 중 맨 위로 변경

order year


3. 가구자료와 개인자료를 merge하기 위해서는 기준되는 변수가 필요하다. 

노동패널데이터 유저가이드를 보면 가구자료와 개인자료간 merge는 조사연도 고유가구번호로 한다.

*조사연도 고유가구번호로 merge하기 때문에 이 변수로 가구자료와 개인자료 모두 sort해준다.

sort hhid02

*고유가구번호가 미관측치인경우 drop

drop  if hhid02 == .

*개인자료 중 가구주의 자료만 남기고 나머지 가구원의 자료는 drop

drop if p0102 != 10

p0102는 가구주와의 관계며 값이 10인 경우가 가구주임, 따라서 가구주가 아닌 경우 개인자료 drop

이렇게 하는 이유는 모든 가구원까지 merge하고 나중에 모든 차수의 파일을 append하면 

특정 조사연도 고유가구번호를 패널 변수로 사용할 경우 중복되어 패널데이터로 settting할 수가 없다.

예를 들어 모든 자료를 append하고 xtset hhid02 year 할 경우 오류 발생


4. 각 조사년도별 가구자료와 개인자료 merge

2차년도 개인자료 파일에서 

sort hhid02

drop if hhid02 == .

drop if p0102 != 10 해주고 파일을 저장함

2차년도 가구자료에서 sort, drop하고 난 후 merge명령 실행

sort hhid02

drop if hhid02 == .

merge hhid02 using "개인자료 파일있는 경로" (ex  "C:\labor_panel\02p.dta")

2차년도 가구자료에 2차년도 가구주 개인자료를 merge한다.

merge한 자료 따로 저장

이를 각 차수별 파일 반복


5. merge한 자료를 append

2차년도 merge된 파일(ex  02hp.dta)을 열고

append using "C:\labor_panel\03hp.dta" 

3차년도 merge된 파일 append 

이를 가장 최신 것 까지 반복

append 할 때 오류 발생. 개인 자료 중 data값이 문자열인 경우가 있음

해당 변수가 중요하지 않은 경우 해당 변수 drop


'Data Science' 카테고리의 다른 글

데이터 분석과 선형대수  (0) 2018.07.07
Data Science의 정의  (0) 2017.11.14
Data Science의 필요성  (0) 2017.11.13
확률과 베이즈 정리  (0) 2017.11.09
'코딩' 교육  (0) 2017.10.13