clear all set memory 1000M cd e:\chililabdata\data use tblsmoking sort smoketextid save, replace use tblsmokingdetails sort smoketextid merge smoketextid using tblsmoking, keep(socialgpid) keep if _merge ==3 drop _merge save tblsmokingdetails_v1, replace use tblsmoking sort observeid merge observeid using observation, keep(obs_de_date) drop if _merge !=3 gen quarterdate = qofd(obs_de_date) tostring quarterdate, gen(key) replace key = socialgpid +key drop _merge sort key save tblsmoking_v1, replace keep key sort key merge key using householdinfortemp keep if _merge == 3 drop _merge sort key merge key using tblsmoking_v1 keep if _merge ==3 drop _merge drop key hhinforid observeid round smoketextid period p quarterdate refquarter maxobs_de_date refdate save tblsmoking_v1, replace