Re: Calculating Age structure explanatory variables on Household Wealth [message #11223 is a reply to message #11209] |
Fri, 18 November 2016 10:39 |
Bridgette-DHS
Messages: 3230 Registered: February 2013
|
Senior Member |
|
|
Another response from Tom Pullum:
Quote:Hi Xavier--I have modified what I sent yesterday to include the means and minima of the household's BMI scores as household variables. Please note that the BMI scores indicate nutritional status, which is not the same as health. Stunting, underweight, and wasting are generally preferred over BMI as indicators of poor child nutrition. Also, for children, BMI (hc73) is given as a z score. Critically low values would be those that are <-200. I would suggest using cutoffs such as 18.5 (or -200) AFTER transferring the household values to a household file, rather than before, but you could certainly apply the cutoffs before.
This procedure, using collapse and merge, provides a general strategy for constructing household-level variables, cluster-level variables, etc. You may find other indicators that are better than BMI. Note that in the final line I did not use weights. For substantive conclusions you would use weights. Good luck!
set more off
use e:\DHS\DHS_data\PR_files\ETPR61FL.dta, clear
sort hhid
save e:\DHS\DHS_data\scratch\ETtemp.dta
gen age=.
replace age=3 if hv105<98
replace age=2 if hv105<65
replace age=1 if hv105<15
gen age1=0
gen age2=0
gen age3=0
replace age1=1 if age==1
replace age2=1 if age==2
replace age3=1 if age==3
tab1 age*
gen hhsize=1
replace hhsize=0 if hv105>=98
* construct bmi for women; remove tail; same for men and children
gen bmi_women=ha40
replace bmi_women=. if ha40>4000
gen bmi_men=hb40
replace bmi_men=. if hb40>4000
* bmi for children is coded as a z score
gen bmi_children=hc73
replace bmi_children=. if hc73>500
* now construct the household means and minima of these bmi scores
gen bmi_women_mean=bmi_women
gen bmi_women_min=bmi_women
gen bmi_men_mean=bmi_men
gen bmi_men_min=bmi_men
gen bmi_children_mean=bmi_children
gen bmi_children_min=bmi_children
drop bmi_women bmi_women bmi_children
collapse (sum) hhsize age1 age2 age3 (mean) *mean (min) *min, by(hhid)
gen prop_age1=age1/hhsize
gen prop_age2=age2/hhsize
gen prop_age3=age3/hhsize
gen youth_dep_ratio=age1/age2
gen oldage_dep_ratio=age3/age2
gen dep_ratio=(age1+age3)/age2
sort hhid
quietly merge hhid using e:\DHS\DHS_data\scratch\ETtemp.dta
drop _merge
* then save; you could also merge with the HR file
summarize prop* *mean *min if hvidx==1
|
|
|