// Creates w_hhize from the number of people in the household via hidp and pno // INPUT FILE - w_indall.dta // OUTPUT FILE - w_hhsize.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-----------------*/ capture bys ${wave}hidp: gen ${wave}hhsize_dv = _N // new variable based on hidp duplicates. lab var ${wave}hhsize_dv "Household size, based on number of hidp duplicates" preserve keep ${wave}hidp ${wave}pno ${wave}hhsize_dv lab dat "Household size, all enumerated individuals" save "${outpath}/${wave}hhsize_dv.dta", replace restore }