// Creates w_buno_dv - Benefit Unit Number of participant // INPUT FILE - w_indall.dta // OUTPUT FILE - w_buno_dv.dta // WRITE FILEPATH WHERE YOU HAVE DOWNLOADED THE DATA global in "" // WRITE FILEPATH WHERE YOU WOULD LIKE TO SAVE THE OUTPUT FILE global outpath "" // 1 is for BHPS, 2 is for UKHLS global cohort "2" foreach w in a b c d e f g h i j { // INCLUDE WAVE LETTERS FOR THE WAVES NEEDED global wave "`w'_" global num=strpos("abcdefghijklmnopqrstuvwxyz","`w'") global dta "" global waveno=$num global inpath "${in}/bhps_w${num}" if $cohort==2 { global waveno=$num+18 global inpath "${in}/ukhls_w${num}" } use "${inpath}/${wave}indall${dta}", clear /*-------------ORIGINAL CODE--------------*/ gen funo=${wave}pno replace funo=${wave}ppno if ${wave}ppno > 0 & ${wave}ppno < ${wave}pno preserve gen funop=funo gen parno=${wave}pno keep ${wave}hidp parno funop sort ${wave}hidp parno save "${outpath}\possparent",replace restore gen parno=${wave}mnspno if ${wave}mnspno > 0 sort ${wave}hidp parno merge m:1 ${wave}hidp parno using "${outpath}\possparent" drop if _merge==2 rename _merge match rename funop funoma replace parno=. replace parno=${wave}fnspno if ${wave}fnspno > 0 sort ${wave}hidp parno merge m:1 ${wave}hidp parno using "${outpath}\possparent" drop if _merge==2 rename _merge fatch rename funop funofa replace parno=. cap drop ${wave}buno_dv replace parno=${wave}adresp15_dv if ${wave}adresp15_dv > 0 sort ${wave}hidp parno merge m:1 ${wave}hidp parno using "${outpath}\possparent" drop if _merge==2 rename _merge ratch rename funop funora gen funoch=funoma if ${wave}depchl_dv==1 & match==3 replace funoch=funofa if ${wave}depchl_dv==1 & fatch==3 & funoch==. replace funoch=funora if ${wave}depchl_dv==1 & ratch==3 & funoch==. replace funoch=-9 if funoch==. & ${wave}depchl_dv==1 tab ${wave}depchl_dv funoch replace funo=funoch if ${wave}depchl_dv==1 gen ${wave}buno_dv=funo lab var ${wave}buno_dv "benefit unit number" lab def ${wave}buno_dv -9"missing", replace keep ${wave}hidp ${wave}pno ${wave}buno_dv lab dat "Benefit unit number, derived" save "${outpath}/${wave}buno_dv", replace erase "${outpath}/possparent.dta" }