본문으로 바로가기

연구제안 및 문의하기

함께하는 KLIPS, 소통하는 KLIPS, 열린 KLIPS

FAQ

부모님의 학력, 직업에 대한 정보를 얻고자 할 때

  • Date2005.12.24
  • Hit9,126


가구자료를 이용해 부모님의 학력에 대한 정보를 찾아볼 수도 있겠지만, 이는 복잡한 작업일 뿐 아니라 이미 사망하였을 경우 학력을 찾을 길이 없다는 문제가 있다. 대신 1차년도 조사에서 모든 응답개인들에게 부모의 학력과 14세 당시 부모의 직업에 대해 질문하였으므로, 이를 활용하는 것이 좋은 방법이다. 이 정보는 1차년도 개인자료와 매 회의 신규자료에 들어있다. 다만, 이 경우 설문이 “아버지의 학력”, “아버지의 직업”을 기준으로 묻고 있다는 점을 주의해야 한다. 어머니의 직업은 14세 당시 아버지가 없었을 경우에만 제한적으로 수집되었으며, 어머니의 학력은 4차년도 신규조사자부터 질문했으므로 불완전한 정보이다.
예제를 통해 9차년도 개인자료에 부모의 학력과 14세 당시 부모의 직업 관련 변수를 붙이는 방법을 예시하겠다.

*==========================================;
*    SAS - 부모의 학력 및 14세당시 부모직업;
*==========================================;

/* 먼저1차년도 개인자료에서 아버지의 학력변수를 빼낸다*/
data a1; set kli.klips01p (keep=pid p01507 p01508);
rename    p01507=psch1  /*<공통>부모-교육수준 (학교) */
 p01508=psch2;  /*<공통>부모-교육수준 (졸업여부) */

if pid>0 then year=1998;
proc sort; by pid; run; 


/* 2~9차년도까지 신규자료의 아버지의 학력 변수도 가져와야 완전한 데이타가 구축됨. */
data a2; set kli.klips02n (keep=pid n02411 n02412);
rename   n02411= psch1
 n02412= psch2;
if pid>0 then year=1999;
proc sort; by pid; run;

data a3; set kli.klips03n (keep=pid n03779 n03780);
rename   n03779= psch1
 n03780= psch2;
if pid>0 then year=2000;
proc sort; by pid; run;

data a4; set kli.klips04n (keep=pid n04852 n04853);
rename   n04852= psch1
 n04853= psch2;
if pid>0 then year=2001;
proc sort; by pid; run;

data a5; set kli.klips05n (keep=pid n05878 n05879);
rename   n05878= psch1
 n05879= psch2;
if pid>0 then year=2002;
proc sort; by pid; run;

data a6; set kli.klips06n (keep=pid n06803 n06804);
rename   n06803= psch1
 n06804= psch2;
if pid>0 then year=2003;
proc sort; by pid; run;

data a7; set kli.klips07n (keep=pid n07802 n07803);
rename   n07802= psch1
 n07803= psch2;
if pid>0 then year=2004;
proc sort; by pid; run;

data a8; set kli.klips08n (keep=pid n08827 n08828);
rename   n08827= psch1
 n08828= psch2;
if pid>0 then year=2005;
proc sort; by pid; run;

data a9; set kli.klips09n (keep=pid n09825 n09826);
rename   n08825= psch1
 n08826= psch2;
if pid>0 then year=2007;
proc sort; by pid; run;

/* 모두 하나의 데이터로 붙이기 */
data pschool;  set a1 a2 a3 a4 a5 a6 a7 a8 a9; run;

/*“잘 모르겠음”미싱처리하기 */
data b1; set pschool;
if 8<=psch1<=9 then psch1=.;
if 6<=psch2<=9 then psch2=.;
proc sort; by pid; run;


/* 신규/개인 불완전 구분으로 인한 중복 케이스 삭제 */
data b2 b3; set b1; by pid;
if first.pid then output b2; else output b3; run;  /* 중복되는 pid 중 첫번째 entry만 취한다 */

data pschool; set b2;
proc sort; by pid; run;      /* B2만 사용한다 */


/* 9차 개인/신규 데이터 구성하기 */
data p1; set kli.klips09p;
proc sort; by pid; run;
            /* 개인과 신규자료 붙일때는 반드시 변수명을 일치시켜주자! */
data p2; set kli.klips09n;
proc sort; by pid; run;

data p3; set p1 p2;
proc sort; by pid; run;


/* 9차년도 개인/신규 데이터에 아버지 학력 붙이기 */
data fnl; merge pschool p3; by pid; run;

*===========================================.
*   SPSS - 부모의 학력 및 14세 당시 부모직업.
*===========================================.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips01p.sav
/keep pid p01507 p01508
/rename (p01507=psch1) (p01508=psch2).
if (pid>0) year=1998.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool1.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips02n.sav
/keep pid n02411 n02412
/rename (n02411=psch1) (n02412=psch2).
if (pid>0) year=1999.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool2.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips03n.sav
/keep pid n03779 n03780
/rename (n03779=psch1) (n03780=psch2).
if (pid>0) year=2000.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool3.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips04n.sav
/keep pid n04852 n04853
/rename (n04852=psch1) (n04853=psch2).
if (pid>0) year=2001.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool4.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips05n.sav
/keep pid n05878 n05879
/rename (n05878=psch1) (n05879=psch2).
if (pid>0) year=2002.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool5.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips06n.sav
/keep pid n06803 n06804
/rename (n06803=psch1) (n06804=psch2).
if (pid>0) year=2003.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool6.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips07n.sav
/keep pid n07802 n07803
/rename (n07802=psch1) (n07803=psch2).
if (pid>0) year=2004.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool7.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips08n.sav
/keep pid n08827 n08828
/rename (n08827=psch1) (n08828=psch2).
if (pid>0) year=2005.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool8.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\klips09n.sav
/keep pid n09825 n09826
/rename (n09825=psch1) (n09826=psch2).
if (pid>0) year=2006.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool9.sav.


* merging all data .

get file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool1.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool2.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool3.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool4.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool5.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool6.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool7.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool8.sav.
add files /file=*
/file=D:\KLIPS\1to9 DATA(SPSS)\temp\pschool9.sav.

sort cases by pid.
save out=D:\KLIPS\1to9 DATA(SPSS)\temp\9pschool.sav.

get file=D:\KLIPS\1to9 DATA(SPSS)\temp\9pschool.sav.
recode psch1 (8 thru 9 = sysmis).
recode psch2 (6 thru 9 = sysmis).
execute.

aggregate
/outfile=D:\KLIPS\1to9 DATA(SPSS)\temp\9pschool_a.sav
/break=pid
/psch1 = max(psch1) /psch2=max(psch2).

get file=D:\KLIPS\1to9 DATA(SPSS)\klips09p.sav.
sort cases by pid.
match files /file=*
/table =D:\KLIPS\1to9 DATA(SPSS)\temp\9pschool_a.sav
/by pid.

execute.

File

스크랩