************************************************************************************************** ************************** ZA 2000 MTUSX CONVERSION ********************************************** * main/ sec* gen main=acta recode main ( -8=69) (-7=1) (-6=3) (10=2) (30 90=4) replace main = 5 if acta ==20 & (loca ==3 | loca ==4) recode main (41 42 43 48 = 25) (50=55) (60 820=34) (80=67) recode main (111 = 7) recode main (115 130 190 210/260 290 310 320 330 340 350 360 370=777) recode main (112=8) replace main = 8 if main == 777 & loca==1 replace main = 7 if main == 777 & (loca ==3 | loca==4) recode main (113 = 23) recode main (114= 13) recode main (140=12) recode main (150=14) recode main (180=63) recode main (280=11) recode main (370 390=9) recode main (410=18) recode main (420=20) recode main (430 = 21) recode main (440=24) recode main (441 448=26) recode main (450 460 490=22) recode main (470=27) recode main (480=67) recode main (511 512 590= 28) recode main (491=22) recode main (521 522 =29) recode main (531 532 561 562=31) recode main (540 550 673=32) (580 =66) (610 615 620 630 650 660 671 672 674 690=33) recode main (680=65) recode main (710=15) (720=16) (730 740 790 =17) (780=64) recode main (810 =40) (832=48) (831 833=49) (840=52) (870=35) (850=42) (860 890=50) recode main (880=68) (910 = 56) (920 990=59) (930=58) (940=61) (950=38) (980=68) replace main =7 if main ==777 & loca !=1 recode main (380=11) gen sec = actb replace sec = 69 if acta ==69 recode sec (-8=69) (-7=1) (-6=3) (10=2) (30 90=4) replace sec = 5 if acta ==20 & (loca ==3 | loca ==4) recode sec (41 42 43 48 = 25) (50=55) (60 820=34) (80=67) recode sec (111 = 7) recode sec (115 130 190 210/260 290 310 320 330 340 350 360 370=777) recode sec (112=8) replace sec = 8 if main == 777 & loca==1 replace sec = 7 if main == 777 & (loca ==3 | loca==4) recode sec (113 = 23) recode sec (114= 13) recode sec (140=12) recode sec (150=14) recode sec(180=63) recode sec (280=11) recode sec(370 390=9) recode sec(410=18) recode sec (420=20) recode sec (430 = 21) recode sec (440=24) recode sec (441 448=26) recode sec (450 460 490=22) recode sec (470=27) recode sec (480=67) recode sec (511 512 590= 28) recode sec (491=22) recode sec (521 522 =29) recode sec (531 532 561 562=31) recode sec (540 550 673=32) (580 =66) (610 615 620 630 650 660 671 672 674 690=33) recode sec (680=65) recode sec (710=15) (720=16) (730 740 790 =17) (780=64) recode sec(810 =40) (832=48) (831 833=49) (840=52) (870=35) (850=42) (860 890=50) recode sec (880=68) (910 = 56) (920 990=59) (930=58) (940=61) (950=38) (980=68) replace sec = 8 if sec ==777 & loca ==1 recode sec (380=11) * av * gen av=acta recode av (111 113 115 130 140 190 310 320 330 340 350 360 370 390=1) recode av (112 150=2) //av3=-8// recode av (710 730 740=4) recode av (180 380 780=5) recode av (410=6) recode av (420 430=7) recode av (236 240 250 450 460 470 490 491 540 673=8) recode av (210 220 230 290=9) recode av (260 440 441 448=10) recode av (511 512 521 522 561 562 590 671 672=11) recode av (80 280 480 531 532 550 580=12) recode av (30=13) recode av (41 42 43 48 90=14) recode av (20=15) recode av (10=16) recode av (680 880 980=17) recode av (870 950=18) recode av (850=19) //av 320 21 24 26 27 28 32 37 38 39= -8// recode av (60 820=22) recode av (114 610 615 620 630 650 660 674 690=23) recode av (810 890=25) recode av (831 832 833=29) recode av (930=30) recode av (920 990=31) recode av (720 790 940=33) recode av (910=34) recode av (50=36) recode av (840 860=40) recode av (-7 -6 -8=41) * hldid * rename uqnr hldid * id * gen id=1 * diary * gen diary=1 * inout* gen inout= LOCB recode inout (1=1) (2 3 8=2) (4/7 9=3) *TUTUTUTUU* * eloc * gen eloc = loca recode eloc (3 4 =3) (5=4) (7=8) (6 8=9) * mtrav * gen mtrav=LOCB recode mtrav (4 5 =1) (6 7 =2) (8=4) (9=5) * ict * gen ict = 1 if acta ==940 | actb==940 recode ict (.=0) * co-presence * gen alone=-8 gen child=-8 gen sppart = -8 gen oad = -8 *core25* gen core25 = main replace core25 = 1 if main ==2 | main==3 replace core25 = 2 if main ==5 | main==6 replace core25 = 3 if main ==1 | main==4 recode core25(7 8 9 10 11 12 13 14 =4) (15 16 17 =5) /// (18 19=6) (20 21 23 = 7) (22=8) (24 25 26=9) (46=10) (27 47=11) (32=12) (28 31=13) (29 30=14) /// (34=15) (33=16) (63 64=17) (62 65 66 67 68=18) (42 43 44=19) (57 58 59=20) (56=21) /// (60 61=22) (35 36 37 38 39 40 41 45=23) (48 49 50 51 52 53 54 55=24) (69=25) *********************************** * BACKGROUND VARIABLES * *********************************** * country * gen country = "ZA" * survey * gen survey = 2000 *swave* gen swave=0 * msamp* gen msamp=0 * persid * rename person persid * TUTUTUTUTTTTTTUUUUU* * region * // from ZA2000_hhld.dta// gen region= PROVINCE * merging in background variables * merge m:1 hldid persid using SouthAfrica_2000.dta, keepusing (month /// year hhldsize nchild agekidx income urban sex age civstat empstat workhrs /// empinclm edcat propwt sppart) rename merge merge_1 * from ZA2000_member.dta * merge m:1 hldid persid using ZA2000_member.dta, keepusing(DAYDIARY OCCUPATI TOTINCOM /// ECSTAT PROV PERWGT INDUS OCCUP ALLSECT NOTLOOKI) * day * gen day = DAYDIAR recode day (0=-8) (1=2) (2=3) (3=4) (4=5) (5=6) (6=7)(7=1) *cday * gen cday=-8 * time * gen time = end - start * badcase * bys hldid persid: egen max_epi = max(epnum) gen badcase =. replace badcase = 4 if max_epi <=7 replace badcase = 1 if sum_mis >90 replace badcase = 0 if badcase==. gen mis=time if main==. bys hldid persid: egen sum_mis = sum(mis) *nowght* gen nowght = 1 if badcase !=0 * reference pers * gen parntid1 =-8 gen parntid2 =-8 gen partid =-8 gen relrefp = -8 * animal * gen animal = 1 if main==27 | sec==27 replace animal = 0 if animal !=1 *agekid2* gen agekid2 = -9 *cohab * gen cohab=-9 *singpar* gen singpar = -9 * empsp * gen empsp = -9 * student * gen student =1 if NOTLOOKI==1 replace student =0 if NOTLOOKI !=1 * retired * gen retired =1 if NOTLOOKI ==2 replace retired =0 if NOTLOOKI !=2 *disab * gen disab =1 if NOTLOOKI==3 replace disab =0 if NOTLOOKI!=3 * ocombwt * gen ocombwt = PERWGT * carer * gen carer =-9 * isco1 * gen isco1= OCCUP recode isco1 (10=9) //inforamtion - isco 9 includes also domestic workers // * emp * gen emp= 1 if ECSTAT ==1 replace emp = 0 if ECSTAT !=1 * unemp * gen unemp = 1 if ECSTAT ==2 replace unemp =0 if ECSTAT !=2 * sector * gen sector =-9 * hhtype * gen hhtype =1 if hhldsize ==1 replace hhtype =2 if civstat==1 & hhldsize ==2 replace hhtype =3 if civstat==1 & hhldsize > 2 replace hhtype =4 if hhtype ==. *famstat * gen famstat = 0 if (age >=18 & age <=39) & nchild ==0 replace famstat =1 if age >=18 & agekidx==1 // under 5 replace famstat =2 if age >-18 & (agekidx ==2 | agekidx==3) // 5-17, none under 5 replace famstat =3 if age >=40 & nchild==0 replace famstat =5 if age <=18 & famstat ==. * merge in from household file * merge m:1 hldid using ZA2000_hhld.dta, keepusing(q12car PROVINCE) *ownhome * gen ownhome =-9 *computer * gen computer=-9 *vehicle * gen vehicle = q12car *citizen * gen citizen =-9 *whereborn * gen whereborn=-9 *rushed * gen rushed =-9 *health * gen health =-9 * region * gen region = PROVINCE label define region /// 1 "Western Cape" /// 2 "Eastern Cape" /// 3 "Northern Cape" /// 4 "Free State" /// 5 "KwaZulu-Natal" /// 6 "North West" /// 7 "Gauteng" /// 8 "Mpumalanga" /// 9 "Northern Province" label val region region ****************** * final cleaning * ****************** drop if merge1==2 | merge2==2 | merge3 ==2 | merge4==2 ******** * MAIN * ******** keep country survey swave msamp hldid persid id day cday month year diary nowght /// time clockst start end epnum main core25 sec av inout eloc ict mtrav alone child sppart oad /// animal parntid1 parntid2 partid hhtype hhldsize nchild agekidx agekid2 income ownhome urban computer /// vehicle sex age famstat singpar relrefp civstat cohab citizen whereborn empstat emp unemp student retired empsp /// workhrs isco1 sector edcat rushed health carer disab ocombwt propwt order country survey swave msamp hldid persid id day cday month year diary nowght /// time clockst start end epnum main core25 sec av inout eloc ict mtrav alone child sppart oad /// animal parntid1 parntid2 partid hhtype hhldsize nchild agekidx agekid2 income ownhome urban computer /// vehicle sex age famstat singpar relrefp civstat cohab citizen whereborn empstat emp unemp student retired empsp /// workhrs isco1 sector edcat rushed health carer disab ocombwt propwt * FROM MASTERFILE * ********** * SURVEY * ********** merge m:1 hldid using ZA2000_hhld.dta, keepusing(q113inco) * incorig * gen incorig =q113inco merge m:1 hldid persid using ZA2000_member.dta, keepusing(RACE HIGHESTS STUDY) * empinclm * gen empinclm = TOTINCOM label val empinclm TOTINCOM * occupo * gen occupo = OCCUP label val occupo OCCUP * educa * gen educa = HIGHESTS * ethnic * gen ethnic = RACE label ethnic RACE * migrantd * gen migrantd = -9 * migrantm * gen migrantm=-9 * migrantf * gen migrantf=-9 keep country survey swave msamp hldid persid incorig region empinclm occupo /// educa ethnic migrantd migrantm migrantf sort country survey swave msamp hldid persid incorig region empinclm occupo /// educa ethnic migrantd migrantm migrantf