************************************ ********* FRANCE 2009/2010 ********* ************************************ clear all set linesize 80 set more off //merge three files use ddfile_fr.dta destring, replace format pid-year ddv1-wght1 %9.0g egen id_temp = concat (hid pid diary) egen id_temp2= concat (hid pid) sort id_temp set more off compress save diary1.dta, replace use efile_fr.dta destring, replace format pid-year mact1-scom144 %9.0g egen id_temp = concat (hid pid diary) egen id_temp2= concat (hid pid) sum id_temp sort id_temp merge id_temp using diary1.dta drop _merge merge 1:1 id_temp using epnumx.dta drop _merge sort id_temp2 save diary2.dta, replace clear use indfile_fr.dta destring, replace format pid-year hhc1-ind37 %9.0g egen id_temp2= concat (hid pid) sort id_temp2 merge id_temp2 using diary2.dta drop _merge //merged data sort hid pid diary order hid pid diary save merged.dta, replace //background variables *country - default* *survey: year the survey began gen survey=2009 *swave gen swave=0 *msamp gen msamp=0 *household id* rename pid persid *person id* rename hid hldid *ID - diary* rename diary id *day* rename ddv1 day *cday* gen cday= -9 *month* rename ddv3 month *diary* gen diary=0 replace diary=1 if id==1 replace diary=2 if id==2 *wherborn* gen wherborn = -9 *ict* egen ict = anycount(mcom1-mcom144), v(1) replace ict=1 if ict>0 *animal* gen animal = -9 *parntid1* gen parntid1=-9 *parntid2* gen parntid2=-9 *partid* gen partid=-9 *hhtype* gen hhtype= inc3 replace hhtype=1 if inc3==1 replace hhtype=2 if inc3==3 | inc3==8 replace hhtype=3 if inc3==6 | inc3==7 replace hhtype=4 if (inc3==1 | inc3==2 |inc3==4| inc3==9| inc3==10| inc3==5) *hhldsize* rename hhc1 hhldsize *nchild* gen nchild= hhc3+hhc4 *agekidx* gen agekidx = hhc2 replace agekidx =1 if 018 *agekid2* gen agekid2 = hhc2 *income* gen income=-5 replace income= 1 if hhq9_1==1 | hhq9_1==2 replace income= 2 if hhq9_1==3 | hhq9_1==4 replace income= 3 if hhq9_1==5 replace income=-7 if hhq9_1==-7 replace income=-8 if hhq9_1==-8 | hhq9_1==-9 *ownhome* gen ownhome=-5 replace ownhome=hhq5 replace ownhome=-7 if hhq5==-6 replace ownhome=-8 if hhq5==-7 replace ownhome=-9 if hhq5==-8 | hhq5==-9 *urban* gen urban = -9 *computer* gen computer= hhq6o recode computer (2=0) (-6=-7) (-7=-8) (-8/-9=-9) *vehicle* gen vehicle= hhq6p recode vehicle (0=0) (1=3) (2/9=4) (-6=-7) (-7=-8) (-8/-9=-9) *sex* rename inc1 sex *age* rename inc2 age //cap is 85. *incorig* gen incorig = ind13_1 *region* gen region = -9 *educa* gen educa = ind22_1 *ethnic* gen ethnic = -9 *migrandtd* gen migrantd = -9 *migrandtm* gen migrantm = -9 *migrandtf* gen migrantf = -9 *famstat* gen famstat=-5 replace famstat=0 if age>=18 & age<=39 & nchild==0 replace famstat=1 if age>=18 & agekid2<5 replace famstat=2 if age>=18 & agekid2>=5 & agekid2<=17 replace famstat=3 if age>=40 & nchild==0 replace famstat=4 if age<18 & (inc3==6 | inc3==7 | inc3==1) replace famstat=5 if age<18 & inc3==4 *singpar* gen singpar=0 replace singpar=1 if inc3==5 *relrefp* gen relrefp=-9 *civstat* gen civstat=-5 replace civstat=0 replace civstat=1 if inc3==6 | inc3==7 | inc3==8 | inc3==9 | inc3==10 *cohab* gen cohab = -5 replace cohab=0 if ind29==-1 | ind28_1==2 replace cohab=1 if ind29==1 replace cohab=-8 if ind29==-9 replace cohab=-7 if ind29==2 *citizen* gen citizen= ind42_1 recode citizen (2/3=0) (1=1) (-6=-7) (-7=-8) (-8/-9=-9) *empstat* gen empstat=-5 replace empstat=1 if ind7==1 //employed full replace empstat=2 if ind7==2 // employed parttime replace empstat=-7 if ind7==-1 | ind6_1==-1 replace empstat=-8 if ind7==-9 *occupo* gen occupo = ind5 *emp* gen emp=-5 replace emp=0 if empstat==-7 | empstat==-8 replace emp=1 if empstat==1 | empstat==2 | empstat==3 *unemp* gen unemp=-5 replace unemp=0 if inc4_1==1 | inc4_1==2 | (ind6_1!=1 | ind6_1!=2) replace unemp=1 if inc4_1==5 *empinclm* gen empinclm = ind13_1 *student* gen student= 0 replace student=1 if ind17_1==31 *retired* gen retired=0 replace retired=1 if inc4_1==7 replace retired=-7 if inc4_1==-6 replace retired=-8 if inc4_1==-7 | inc4_1==-8 | inc4_1==-9 *empsp* gen empsp=-5 replace empsp = 1 if (ind33_1==1 | ind33_1==2) & ind34==1 //full replace empsp = 2 if (ind33_1==1 | ind33_1==2) & ind34==2 //part replace empsp = 3 if (ind33_1==1 | ind33_1==2 )& ind34==8 //unknown replace empsp = 4 if (ind34==-9 | ind34==-1) | ind33_1==-1 //not in the labor force *work hours* gen workhrs = ind10_1 replace workhrs = -7 if ind10_1==-1 replace workhrs = -8 if ind10_1==-6 | ind10_1==-7 | /// ind10_1==-8 | ind10_1==-9 *isco1* gen isco1=ind5 recode isco1 (-1=-7) (-7/-8=-8) (-6=-9) *sector* gen sector=-9 *educat* gen edcat= -5 replace edcat=1 if (ind22_1==01 |ind22_1==11 | ind22_1==21 |ind22_1==22 | /// ind22_1==31 | ind22_1==32) replace edcat=2 if ind22_1==39 |ind22_1==41 | ind22_1==42 |ind22_1==43 replace edcat=3 if ind22_1==51 |ind22_1==52 | ind22_1==60 replace edcat=-7 if ind22_1==-1 replace edcat=-8 if ind22_1==-8 | ind22_1==-9 *rushed* gen rushed= -9 *health* gen health = -5 replace health = 0 if ind23==5 |ind23==4 replace health = 1 if ind23==3 replace health = 2 if ind23==2 replace health = 3 if ind23==1 replace health = -8 if ind23==-7 | ind23==-8 | ind23==-9 *carer* gen carer = -9 *disab* gen disab = -9 *ocombwt* gen ocombwt = wght2 //time variables *MAIN1: IMPUTED PERSONAL OR HOUSEHOLD CARE gen main1=0 *MAIN2: SLEEP AND NAPS gen main2=0 forval i= 1/144 { replace main2=main2+1 if mact`i'==11 | mact`i'==12 } replace main2=main2*10 *MAIN3: IMPUTED SLEEP gen main3=0 *MAIN4: WASH, DRESS, CARE FOR SELF gen main4=0 forval i= 1/144 { replace main4=main4+1 if mact`i'==31 | mact`i'==39 } replace main4=main4*10 *MAIN5: MEALS AT WORK OR SCHOOL gen main5=0 forval i= 1/144 { replace main5=main5+1 if (mact`i'==21 & where`i'==13) } replace main5=main5*10 *MAIN6: OTHER MEALS OR SNACKS gen main6=0 forval i= 1/144 { replace main6=main6+1 if (mact`i'==21 & where`i'!=13 & where`i'!=21) } replace main6=main6*10 *MAIN7: PAID WORK - MAIN JOB (NOT AT HOME) gen main7=0 forval i= 1/144 { replace main7=main7+1 if (mact`i'==111 & where`i'!=11 & where`i'!=12 /// & where`i'!=33 & where`i'!=34 & where`i'!=39 & where`i'!=41 & where`i'!=31 & /// where`i'!=32 & where`i'!=30) } replace main7=main7*10 *MAIN8: PAID WORK AT HOME gen main8=0 forval i= 1/144 { replace main8=main8+1 if ((mact`i'==111) & (where`i'==11 | where`i'==12)) } replace main8=main8*10 *MAIN9: SECOND OR OTHER JOB NOT AT HOME gen main9=0 *MAIN10: UNPAID WORK TO GENERATE HOUSEHOLD INCOME gen main10=0 *MAIN11: TRAVEL AS A PART OF WORK gen main11=0 forval i= 1/144 { replace main11=main11+1 if ((mact`i'==111) & (where`i'==33 | where`i'==34 /// | where`i'==39 | where`i'==41 | where`i'==31 | where`i'==32 | where`i'==30)) } replace main11=main11*10 *MAIN12: WORK BREAKS gen main12=0 forval i= 1/80 { replace main12= main12+1 if mact`i'==121 } *MAIN13: OTHER TIME AT WORKPLACE gen main13=0 forval i= 1/144 { replace main13=main13+1 if mact`i'==129 } replace main13=main13*10 *MAIN14: LOOK FOR WORK gen main14=0 forval i= 1/144 { replace main14=main14+1 if mact`i'==122 } replace main14=main14*10 *MAIN15: REGULAR SCHOOLING, EDUCATION gen main15=0 forval i= 1/144 { replace main15=main15+1 if mact`i'==211 } replace main15=main15*10 *MAIN16: HOMEWORK gen main16=0 forval i= 1/144 { replace main16=main16+1 if mact`i'==200 | mact`i'==212 } replace main16=main16*10 *MAIN17: LEISURE/OTHER EDUCATION TRAINING gen main17=0 forval i= 1/144 { replace main17=main17+1 if mact`i'==210 | mact`i'==221 } replace main17=main17*10 *MAIN18: FOOD PREPARATION, COOK gen main18=0 forval i= 1/144 { replace main18=main18+1 if mact`i'==311 } replace main18=main18*10 *MAIN19: SET TABLE, WASH/PUT AWAY DISHES gen main19=0 forval i= 1/144 { replace main19=main19+1 if mact`i'==312 } replace main19=main19*10 *MAIN20: CLEANING gen main20=0 forval i= 1/144 { replace main20=main20+1 if mact`i'==321 | mact`i'==322 } replace main20=main20*10 *MAIN21: LAUNDRY, IRONING, CLOTHING REPAIR gen main21=0 forval i= 1/144 { replace main21=main21+1 if mact`i'==331 | mact`i'==332 | mact`i'==333 | /// mact`i'==339 } replace main21=main21*10 *MAIN22: MAINTAIN HOME / VEHICLE gen main22=0 forval i= 1/144 { replace main22=main22+1 if mact`i'==323 | mact`i'==342 | mact`i'==351 | /// mact`i'==352 | mact`i'==353 | mact`i'==354 | mact`i'==359 } replace main22=main22*10 *MAIN23: OTHER DOMESTIC WORK gen main23=0 forval i= 1/144 { replace main23=main23+1 if mact`i'==300 | mact`i'==324 | mact`i'==329 | /// mact`i'==371 } replace main23=main23*10 *MAIN24: PURCHASE GOODS gen main24=0 forval i= 1/144 { replace main24=main24+1 if mact`i'==361 | mact`i'==369 } replace main24=main24*10 *MAIN25: CONSUME PERSONAL CARE SERVICES gen main25=0 forval i= 1/144 { replace main25=main25+1 if mact`i'==363 } replace main25=main25*10 *MAIN26: CONSUME OTHER SERVICES gen main26=0 forval i= 1/144 { replace main26=main26+1 if mact`i'==362 } replace main26=main26*10 *MAIN27: PET CARE (NOT WALK DOG) gen main27=0 forval i= 1/144 { replace main27=main27+1 if mact`i'==343 } replace main27=main27*10 *MAIN28: PHYSICAL, MEDICAL CHILD CARE gen main28=0 forval i= 1/144 { replace main28=main28+1 if mact`i'==381 | mact`i'==423 | mact`i'==424 } replace main28=main28*10 *MAIN29: TEACH, HELP WITH HOMEWORK gen main29=0 forval i= 1/144 { replace main29=main29+1 if mact`i'==382 } replace main29=main29*10 *MAIN30: READ TO, TALK OR PLAY WITH CHILDREN gen main30=0 forval i= 1/144 { replace main30=main30+1 if mact`i'==383 } replace main30=main30*10 *MAIN31: SUPERVISE, ACCOMPANY, OTHER CHILD CARE gen main31=0 forval i= 1/144 { replace main31=main31+1 if mact`i'==384 | mact`i'==389 } replace main31=main31*10 *MAIN32: ADULT CARE gen main32=0 forval i= 1/144 { replace main32=main32+1 if mact`i'==391 | mact`i'==392 | mact`i'==399 | /// mact`i'==421 | mact`i'==422 | mact`i'==425 | mact`i'==429 } replace main32=main32*10 *MAIN33: VOLUNTARY, CIVIC ORGANIZATIONAL ACT gen main33=0 forval i= 1/144 { replace main33=main33+1 if mact`i'==411 | mact`i'==431 | /// mact`i'==439 | mact`i'==995 | mact`i'==996 } replace main33=main33*10 *MAIN34: WORSHIP AND RELIGION gen main34=0 forval i= 1/144 { replace main34=main34+1 if mact`i'==432 } replace main34=main34*10 *MAIN35: GENERAL OUT-OF-HOME LEISURE gen main35=0 forval i= 1/144 { replace main35=main35+1 if (mact`i'==529 & where`i'!=11 & where`i'!=12) } replace main35=main35*10 *MAIN36: ATTENDING SPORTING EVENT gen main36=0 forval i= 1/144 { replace main36=main36+1 if mact`i'==525 } replace main36=main36*10 *MAIN37: CINEMA, THEATRE, OPERA, CONCERT gen main37=0 forval i= 1/144 { replace main37=main37+1 if mact`i'==521 | mact`i'==522 } replace main37=main37*10 *MAIN38: OTHER PUBLIC EVENT, VENUE gen main38=0 forval i= 1/144 { replace main38=main38+1 if mact`i'==523 | mact`i'==524 } replace main38=main38*10 *MAIN39: RESTAURANT, CAFE, BAR, PUB gen main39=0 forval i= 1/144 { replace main39=main39+1 if (mact`i'==21 & where`i'==21) } replace main39=main39*10 *MAIN40: PARTY, SOCIAL EVENT, GAMBLING gen main40=0 forval i= 1/144 { replace main40=main40+1 if mact`i'==513 } replace main40=main40*10 *MAIN41: IMPUTED TIME AWAY FROM HOME gen main41=0 *MAIN42: GENERAL SPORT OR EXERCISE gen main42=0 forval i= 1/144 { replace main42=main42+1 if ((mact`i'==612 | mact`i'==614 | mact`i'==615 | /// mact`i'==616 | mact`i'==619 | mact`i'==631) | (mact`i'==613 & where`i'!=32)) } replace main42=main42*10 *MAIN43: WALKING gen main43=0 forval i= 1/144 { replace main43=main43+1 if mact`i'==611 } replace main43=main43*10 *MAIN44: CYCLING gen main44=0 forval i= 1/144 { replace main44=main44+1 if (mact`i'==613 & where`i'==32) } replace main44=main44*10 *MAIN45: OTHER OUTSIDE RECREATION gen main45=0 *MAIN46: GARDENING / PICK MUSHROOMS gen main46=0 forval i= 1/144 { replace main46=main46+1 if mact`i'==341 | mact`i'==349 | mact`i'==621 } replace main46=main46*10 *MAIN47: WALK DOGS gen main47=0 forval i= 1/144 { replace main47=main47+1 if mact`i'==344 } replace main47=main47*10 *MAIN48: RECEIVE OR VISIT FRIENDS gen main48=0 forval i= 1/144 { replace main48=main48+1 if mact`i'==512 | mact`i'==519 } replace main48=main48*10 *MAIN49: CONVERSATION (IN PERSON, PHONE) gen main49=0 forval i= 1/144 { replace main49=main49+1 if mact`i'==514 } replace main49=main49*10 *MAIN50: OTHER IN-HOME, SOCIAL GAMES gen main50=0 forval i= 1/144 { replace main50=main50+1 if mact`i'==511 | mact`i'==731 | mact`i'==732 | /// mact`i'==739 } replace main50=main50*10 *MAIN51: GENERAL INDOOR LEISURE gen main51=0 forval i= 1/144 { replace main51=main51+1 if ((mact`i'==529 & (where`i'==11 | where`i'==12)) | /// mact`i'==997 | mact`i'==998) } replace main51=main51*10 *MAIN52: ART OR MUSIC gen main52=0 forval i= 1/144 { replace main52=main52+1 if mact`i'==711 } replace main52=main52*10 *MAIN53: CORRESPONDENSE (NOT E-LAB MAIL) gen main53=0 forval i= 1/144 { replace main53=main53+1 if mact`i'==713 } replace main53=main53*10 *MAIN54: KNIT, CRAFTS OR HOBBIES gen main54=0 forval i= 1/144 { replace main54=main54+1 if mact`i'==712 | mact`i'==719 } replace main54=main54*10 *MAIN55: RELAX, THINK, DO NOTHING gen main55=0 forval i= 1/144 { replace main55=main55+1 if mact`i'==531 } replace main55=main55*10 *MAIN56: READ gen main56=0 forval i= 1/144 { replace main56=main56+1 if mact`i'==811 | mact`i'==812 | mact`i'==819 } replace main56=main56*10 *MAIN57: LISTEN TO MUSIC ETC. gen main57=0 forval i= 1/144 { replace main57=main57+1 if mact`i'==832 | mact`i'==839 } replace main57=main57*10 *MAIN58: LISTEN TO RADIO gen main58=0 forval i= 1/144 { replace main58=main58+1 if mact`i'==831 } replace main58=main58*10 *MAIN59: WATCH TV, VIDEO, DVD gen main59=0 forval i= 1/144 { replace main59=main59+1 if mact`i'==821 | mact`i'==822 | mact`i'==829 } replace main59=main59*10 *MAIN60: COMPUTER GAMES gen main60=0 forval i= 1/144 { replace main60=main60+1 if mact`i'==733 } replace main60=main60*10 *MAIN61: E-LAB MAIL, SURF INTERNET, COMPUTING gen main61=0 forval i= 1/144 { replace main61=main61+1 if mact`i'==721 | mact`i'==722 | mact`i'==723 | /// mact`i'==729 } replace main61=main61*10 *MAIN62: NO ACT BUT RECORDED TRANSPORT MODE gen main62= 0 *MAIN63: TRAVEL TO/FROM WORK gen main63=0 forval i= 1/144 { replace main63=main63+1 if mact`i'==910 } replace main63=main63*10 *MAIN64: EDUCATIONAL TRAVEL gen main64=0 forval i= 1/144 { replace main64=main64+1 if mact`i'==920 } replace main64=main64*10 *MAIN65: VOLUNTARY / CIVIC / RELIGIOUS TRAVEL gen main65=0 forval i= 1/144 { replace main65=main65+1 if mact`i'==940 } replace main65=main65*10 *MAIN66: CHILD / ADULT CARE TRAVEL gen main66=0 forval i= 1/144 { replace main66=main66+1 if mact`i'==938 | mact`i'==939 } replace main66=main66*10 *MAIN67: SHOP PERSON / HOUSEHOLD CARE TRAVEL gen main67=0 forval i= 1/144 { replace main67=main67+1 if mact`i'==930 | mact`i'==936 } replace main67=main67*10 *MAIN68: OTHER TRAVEL gen main68=0 forval i= 1/144 { replace main68=main68+1 if mact`i'==900 | mact`i'==950 | mact`i'==960 | /// mact`i'==990 } replace main68=main68*10 *MAIN69: NO RECORDED ACTIVITY gen main69=0 forval i= 1/144 { replace main69=main69+1 if mact`i'==999 } replace main69=main69*10 egen tot_main=rsum(main1-main69) tab tot_main drop tot_main *av41* forval i = 1/41 { gen av`i' = -5 } replace av1 = main5 + main7 + main10 + main12 + main13 //location variable includes workplace and school together replace av2 = main8 + main14 replace av3 = main9 replace av4 = main15 + main17 replace av5 = main11 + main63 + main64 replace av6 = main18 + main19 replace av7 = main20 + main21 replace av8 = main22 + main23 + main27 + main32 replace av9 = main46 replace av10 = main24 + main26 replace av11 = main28 + main29 + main30 + main31 replace av12 = main66 + main67 replace av13 = main1 + main4 replace av14 = main25 replace av15 = main6 replace av16 = main2 + main3 replace av17 = main62 + main65 + main68 replace av18 = main35 + main38 + main45 replace av19 = main42 + main44 replace av20 = main36 replace av21 = main43 + main47 replace av22 = main34 replace av23 = main33 replace av24 = main37 replace av25 = main40 replace av26 = 0 replace av27 = main39 replace av28 = 0 replace av29 = main48 replace av38 = main50 replace av30 = main58 replace av31 = main59 replace av32 = main57 replace av33 = main16 replace av34 = main56 replace av35 = 0 replace av36 = main55 replace av37 = main49 replace av39 = main51 + main52 + main53 replace av40 = main54 + main60 + main61 replace av41 = main41 + main69 egen t_av=rsum(av1 - av41) tab t_av drop t_av *badcase* *time variables - main* gen miss = av41 //missing activities gen eatdrk = av6 + av15 + av27 + av28+ av29+ av38 lab var eatdrk "Time spent on eating and drinking (basic act.)" gen trav = av5 + av12 + av17 + av19 + av21+ av9+ av24 +av18 +av29 +av19 lab var trav "Time spent on traveling or exercise(basic act.)" gen rst = av16 + av36 lab var rst "Time spent on resting/sleeping (basic act.)" gen pcare = av13 + av14 lab var pcare "Time spent on personal care (basic act.)" gen misbasic = 0 replace misbasic = misbasic + 1 if eatdrk == 0 replace misbasic = misbasic + 1 if trav== 0 replace misbasic = misbasic + 1 if rst == 0 replace misbasic = misbasic + 1 if pcare == 0 lab var misbasic "number of missing basic activities (b.a.)" #delimit; lab def misbasic 0 "No missing b.a." 1 "One missing b.a." 2 "Two missing b.a." 3 "Three missing b.a." 4 "Four missing b.a." ; lab val misbasic misbasic ; #delimit cr *no gender or sex gen loss_sex_age=1 if sex<0 | age<0 replace loss_sex_age=0 if loss_sex_age==. * less than 7 episode count if epnum <7 *badcase* gen badcase = -5 replace badcase = 1 if miss>90 | epnum<7 | misbasic >1 | loss_sex_age==0 replace badcase = 0 if misbasic>1 & epnum>6 & miss<91 *propwt* egen count=count(badcase) egen countp_bis=count(badcase) if badcase==0 egen countp=min(countp_bis) sort sex age day egen daywt=group(sex age day) if badcase==0 egen ngroupsd=max(daywt) if badcase==0 by sex age day: egen daycount2=count(daywt) if badcase==0 sort sex age egen weekwt=group(sex age) if badcase==0 egen ngroupsp=max(weekwt) if badcase==0 by sex age: egen wkcount2=count(weekwt) if badcase==0 generate propwt=((wkcount2/7)/daycount2) replace propwt=0 if badcase!=0 replace propwt=propwt*(count/countp) egen mean_weight=mean(propwt) replace propwt=propwt/mean_weight *nowght* gen nowght = -5 replace nowght = 1 if main69>90 replace nowght = 1 if epnum<7 replace nowght = 1 if (eatdrk==0 & rst==0 & pcare==0) tab nowght replace nowght=0 if nowght==-5 drop av1-av41 main1-main69 sort hldid persid id save fr2009.dta, replace //time variables clear all set linesize 80 set more off use efile_fr.dta destring, replace format pid-year mact1-scom144 %9.0g egen unique = concat (hid pid diary) sort unique reshape long mact sactn where alone wpartner wparent wchild wotherh wotherp /// mcom scom, i(unique) j(tslot) sort unique tslot destring unique, replace tsset unique tslot gen begin=1 if mact!=mact[_n-1] replace begin=1 if unique! = unique[_n-1] gen finish=1 if mact!=mact[_n+1] replace finish=1 if unique!=unique[_n+1] drop if begin==. & finish==. replace begin=tslot if begin==1 replace finish=tslot if finish==1 replace finish=finish[_n+1] if finish==. drop if begin==. * clockst, start, end* gen start = -5 replace start=(begin-1)*10 gen end = -5 replace end=finish*10 order unique tslot start end begin finish gen cl_temp=0 replace cl_temp=start gen cl_hour=trunc(cl_temp/60) gen cl_min=((cl_temp-(cl_hour*60))*0.01) gen clockst = -5 replace clockst=cl_hour+cl_min format clockst %12.2f gen time = end - start bys unique: egen totime=total(time) tab totime drop totime *epnum* sort unique by unique: gen epnum = _n by unique: egen epnumx = max(epnum) ********************************** *time variables - main activities* ********************************** gen main=-5 replace main=2 if mact==11 | mact==12 replace main=4 if mact==31 | mact==39 replace main=5 if mact==21 & where==13 replace main=6 if mact==21 & where!=13 & where!=21 replace main=7 if mact==111 & where!=11 & where!=12 & /// where!=33 & where!=34 & where!=39 & where!=41 & where!=31 & /// where!=32 & where!=30 replace main=8 if (mact ==111) & (where ==11 | where ==12) replace main=11 if (mact ==111) & (where ==33 | where ==34 /// | where==39 | where==41 | where==31 | where ==32 | where ==30) replace main=12 if mact ==121 replace main=13 if mact ==129 replace main=14 if mact ==122 replace main=15 if mact ==211 replace main=16 if mact ==200 | mact ==212 replace main=17 if mact ==210 | mact ==221 replace main=18 if mact ==311 replace main=19 if mact ==312 replace main=20 if mact ==321 | mact ==322 replace main=21 if mact==331 | mact ==332 | mact ==333 | mact ==339 replace main=22 if mact ==323 | mact ==342 | mact ==351 | /// mact ==352 | mact ==353 | mact ==354 | mact ==359 replace main=23 if mact ==300 | mact ==324 | mact ==329 | mact ==371 replace main=24 if mact ==361 | mact==369 replace main=25 if mact ==363 replace main=26 if mact ==362 replace main=27 if mact ==343 replace main=28 if mact ==381 | mact ==423 | mact ==424 replace main=29 if mact ==382 replace main=30 if mact ==383 replace main=31 if mact ==384 | mact ==389 replace main=32 if mact ==391 | mact ==392 | mact ==399 | /// mact ==421 | mact ==422 | mact ==425 | mact ==429 replace main=33 if mact ==411 | mact ==431 | /// mact ==439 | mact==995 | mact ==996 replace main=34 if mact ==432 replace main=35 if mact ==529 & where!=11 & where!=12 replace main=36 if mact ==525 replace main=37 if mact ==521 | mact ==522 replace main=38 if mact ==523 | mact==524 replace main=39 if mact ==21 & where ==21 replace main=40 if mact ==513 replace main=42 if (mact ==612 | mact ==614 | mact ==615 | /// mact ==616 | mact ==619 | mact ==631) | (mact ==613 & where!=32) replace main=43 if mact ==611 replace main=44 if mact ==613 & where ==32 replace main=46 if mact==341 | mact ==349 | mact ==621 replace main=47 if mact ==344 replace main=48 if mact ==512 | mact ==519 replace main=49 if mact ==514 replace main=50 if mact ==511 | mact ==731 | mact ==732 | mact ==739 replace main=51 if (mact ==529 & (where==11 | where==12)) | /// mact==997 | mact ==998 replace main=52 if mact ==711 replace main=53 if mact ==713 replace main=54 if mact ==712 | mact ==719 replace main=55 if mact==531 replace main=56 if mact ==811 | mact ==812 | mact ==819 replace main=57 if mact ==832 | mact ==839 replace main=58 if mact ==831 replace main=59 if mact ==821 | mact ==822 | mact ==829 replace main=60 if mact==733 replace main=61 if mact ==721 | mact ==722 | mact ==723 | mact ==729 replace main=63 if mact ==910 replace main=64 if mact ==920 replace main=65 if mact ==940 replace main=66 if mact ==938 | mact ==939 replace main=67 if mact ==930 | mact ==936 replace main=68 if mact ==900 | mact ==950 | mact ==960 | mact ==990 replace main=69 if mact ==999 *second activities 69 categories* gen sec = -5 replace sec=2 if sactn==11 | sactn==12 replace sec=4 if sactn==31 | sactn==39 replace sec=5 if sactn==21 & where==13 replace sec=6 if sactn==21 & where!=13 & where!=21 replace sec=7 if sactn==111 & where!=11 & where!=12 & /// where!=33 & where!=34 & where!=39 & where!=41 & where!=31 & /// where!=32 & where!=30 replace sec=8 if (sactn ==111) & (where ==11 | where ==12) replace sec=11 if (sactn ==111) & (where ==33 | where ==34 /// | where==39 | where==41 | where==31 | where ==32 | where ==30) replace sec=12 if sactn ==121 replace sec=13 if sactn ==129 replace sec=14 if sactn ==122 replace sec=15 if sactn ==211 replace sec=16 if sactn ==200 | sactn ==212 replace sec=17 if sactn ==210 | sactn ==221 replace sec=18 if sactn ==311 replace sec=19 if sactn ==312 replace sec=20 if sactn ==321 | sactn ==322 replace sec=21 if sactn==331 | sactn ==332 | sactn ==333 | sactn ==339 replace sec=22 if sactn ==323 | sactn ==342 | sactn ==351 | /// sactn ==352 | sactn ==353 | sactn ==354 | sactn ==359 replace sec=23 if sactn ==300 | sactn ==324 | sactn ==329 | sactn ==371 replace sec=24 if sactn ==361 | sactn==369 replace sec=25 if sactn ==363 replace sec=26 if sactn ==362 replace sec=27 if sactn ==343 replace sec=28 if sactn ==381 | sactn ==423 | sactn ==424 replace sec=29 if sactn ==382 replace sec=30 if sactn ==383 replace sec=31 if sactn ==384 | sactn ==389 replace sec=32 if sactn ==391 | sactn ==392 | sactn ==399 | /// sactn ==421 | sactn ==422 | sactn ==425 | sactn ==429 replace sec=33 if sactn ==411 | sactn ==431 | /// sactn ==439 | sactn==995 | sactn ==996 replace sec=34 if sactn ==432 replace sec=35 if sactn ==529 & where!=11 & where!=12 replace sec=36 if sactn ==525 replace sec=37 if sactn ==521 | sactn ==522 replace sec=38 if sactn ==523 | sactn==524 replace sec=39 if sactn ==21 & where ==21 replace sec=40 if sactn ==513 replace sec=42 if (sactn ==612 | sactn ==614 | sactn ==615 | /// sactn ==616 | sactn ==619 | sactn ==631) | (sactn ==613 & where!=32) replace sec=43 if sactn ==611 replace sec=44 if sactn ==613 & where ==32 replace sec=46 if sactn==341 | sactn ==349 | sactn ==621 replace sec=47 if sactn ==344 replace sec=48 if sactn ==512 | sactn ==519 replace sec=49 if sactn ==514 replace sec=50 if sactn ==511 | sactn ==731 | sactn ==732 | sactn ==739 replace sec=51 if (sactn ==529 & (where==11 | where==12)) | /// sactn==997 | sactn ==998 replace sec=52 if sactn ==711 replace sec=53 if sactn ==713 replace sec=54 if sactn ==712 | sactn ==719 replace sec=55 if sactn==531 replace sec=56 if sactn ==811 | sactn ==812 | sactn ==819 replace sec=57 if sactn ==832 | sactn ==839 replace sec=58 if sactn ==831 replace sec=59 if sactn ==821 | sactn ==822 | sactn ==829 replace sec=60 if sactn==733 replace sec=61 if sactn ==721 | sactn ==722 | sactn ==723 | sactn ==729 replace sec=63 if sactn ==910 replace sec=64 if sactn ==920 replace sec=65 if sactn ==940 replace sec=66 if sactn ==938 | sactn ==939 replace sec=67 if sactn ==930 | sactn ==936 replace sec=68 if sactn ==900 | sactn ==950 | sactn ==960 | sactn ==990 replace sec=69 if sactn ==999 replace sec = . if sec==-5 *core 25 categories* gen core25 = -5 replace core25 = 1 if main==2 | main==3 replace core25 = 2 if main==5 | main==6 replace core25 = 3 if main==1 | main==4 replace core25 = 4 if main==7 | main==8 | main==9 | main==10 | main==11 | /// main==12 | main==13 | main==14 replace core25 = 5 if main==15 | main==16 | main==17 replace core25 = 6 if main==18 | main==19 replace core25 = 7 if main==20 | main==21 | main==23 replace core25 = 8 if main==22 replace core25 = 9 if main==24 | main==25 | main==26 replace core25 = 10 if main==46 replace core25 = 11 if main==27 | main==47 replace core25 = 12 if main==32 replace core25 = 13 if main==28 | main==31 replace core25 = 14 if main==29 | main==30 replace core25 = 15 if main==34 replace core25 = 16 if main==33 replace core25 = 17 if main==63 | main==64 replace core25 = 18 if main==62 | main==65 | main==66 | main==67 | /// main==68 replace core25 = 19 if main==42 | main==43 | main==44 replace core25 = 20 if main==57 | main==58 | main==59 replace core25 = 21 if main==56 replace core25 = 22 if main==60 | main==61 replace core25 = 23 if main==35 | main==36 | main==37 | main==38 | /// main==39 | main==40 | main==41 | main==45 replace core25 = 24 if main==48 | main==49 | main==50 | main==51 | /// main==52 | main==53 | main==54 | main==55 replace core25 = 25 if main==69 *av41* gen av = -5 replace av = 1 if main==5 | main==7 | main==10 | main==12 | main==13 //location variable includes workplace and school together replace av = 2 if main==8 | main==14 replace av = 3 if main==9 replace av = 4 if main==15 | main==17 replace av = 5 if main==11 | main==63 | main==64 replace av = 6 if main==18 | main==19 replace av = 7 if main==20 | main==21 replace av = 8 if main==22 | main==23 | main==27 | main==32 replace av = 9 if main==46 replace av = 10 if main==24 | main==26 replace av = 11 if main==28 | main==29 | main==30 | main==31 replace av = 12 if main==66 | main==67 replace av = 13 if main==1 | main==4 replace av = 14 if main==25 replace av = 15 if main==6 replace av = 16 if main==2 | main==3 replace av = 17 if main==62 | main==65 | main==68 replace av = 18 if main==35 | main==38 | main==45 replace av = 19 if main==42 | main==44 replace av = 20 if main==36 replace av = 21 if main==43 | main==47 replace av = 22 if main==34 replace av = 23 if main==33 replace av = 24 if main==37 replace av = 25 if main==40 replace av = 27 if main==39 replace av = 29 if main==48 replace av = 30 if main==58 replace av = 31 if main==59 replace av = 32 if main==57 replace av = 33 if main==16 replace av = 34 if main==56 replace av = 36 if main==55 replace av = 37 if main==49 replace av = 38 if main==50 replace av = 39 if main==51 | main==52 | main==53 replace av = 40 if main==54 | main==60 | main==61 replace av = 41 if main==41 | main==69 *eloc* gen eloc = -5 replace eloc = 1 if where==11 | where==12 replace eloc = 2 if where==14 replace eloc = 3 if where==13 //can't differentiate workplace from school replace eloc = 5 if where==16 replace eloc = 6 if where==15 replace eloc = 7 if (where==0 | where==10 | where==19) & mact==432 replace eloc = 8 if where==20 | where==21 | where==22 | where==23 | /// where==24 | where==29 | where==31 replace eloc = 9 if where==19 replace eloc = -8 if where==0 | eloc==-5 *inout* gen inout=-5 replace inout=1 if (where==11 | where==12 | where==13 | /// where==14 | where==15) & (mact!=341 | mact!=344 | /// mact!=621 | mact!=910 | mact!=920 | mact!=936 | /// mact!=938 | mact!=939 | mact!=940 | mact!=950 | /// mact!=960 | mact!=980) replace inout=2 if (where==21 | where==22 | where==23) replace inout=3 if (where==24 | where==31) & (mact!=341 | /// mact!=344 | mact!=621 | mact!=910 | mact!=920 | /// mact!=936 | mact!=938 | mact!=939 | mact!=940 | /// mact!=950 | mact!=960 | mact!=980) replace inout=-8 if (where==19 | where==20 | where==29) *mtrav* gen mtrav=-5 replace mtrav=-8 if mtrav==-5 & mact==999 replace mtrav=-7 if mtrav==-5 & (eloc==1 | inout==1) replace mtrav=1 if where==23 | where==24 replace mtrav=2 if where==31 replace mtrav=3 if where==21 replace mtrav=4 if where==22 replace mtrav=5 if where==29 *alone* recode alone (.=0)(-9=-8)(-1=-7)(1=1) *child* recode wchild (.=0)(-9=-8)(-1=-7)(1=1), gen(child) *sppart* recode wpartner (.=0)(-9=-8)(-1=-7)(1=1), gen(sppart) *oad* recode wotherh wotherp (.=0)(-9=-8)(-1=-7)(1=1), pre(oad) gen oad=0 replace oad = 1 if oadwotherh==1 | oadwotherp==1 replace oad = -7 if oadwotherh==-7 | oadwotherp==-7 replace oad = -8 if oadwotherh==-8 | oadwotherp==-8 sort hid pid diary rename hid hldid rename pid persid rename diary id keep hldid persid id time clockst start end epnum epnumx main sec /// core25 av eloc inout mtrav alone child sppart oad save fr2009_time.dta, replace merge m:m hldid persid id using fr2009.dta save fr2009_final.dta, replace #delimit; 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 wherborn 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 wherborn empstat emp unemp student retired empsp workhrs isco1 sector edcat rushed health carer disab ocombwt propwt ; #delimit cr sort hldid persid id save fr2009tusx-main.dta, replace *********************************************************** clear all use fr2009_final.dta drop mact1-scom144 #delimit; collapse (first) country (first) survey (first) swave (first) msamp (first) incorig (first) region (first) empinclm (first) occupo (first) educa (first) ethnic (first) migrantd (first) migrantm (first) migrantf, by(hldid persid); #delimit cr replace occupo = -9 sort hldid persid order country survey swave msamp hldid persid incorig /// region empinclm occupo educa ethnic migrantd migrantm migrantf save fr2009-survey.dta, replace