Birth Variables - V212 (Tanzania 2012) [message #824] |
Tue, 08 October 2013 16:55 |
lisamariealbert
Messages: 1 Registered: October 2013 Location: UNC
|
Member |
|
|
I need to use the age at first pregnancy, however this variable V212 is not even available in the individual dataset for 2012 Tanzania. The DHS6 recode manual defines as "V212 Age of the respondent at first birth is calculated from the CMC of the date of first birth and the CMC of the date of birth of the respondent.BASE: All respondents with one or more births (V201 > 0)."
Since the birth history is given in sets of 20 variables, with the index being BIDX (ex. BIDX_01-BIDX_20), and Birth Order being BORD (BORD_01-BORD_20) with the most recent birth in the first variables _01 and the first birth in the last variable (if 3 births the first birth would be in BORD_03, from my understanding). This would require some complicated array processing in SAS to calculate the age of the respondent at the first birth - and to do this for each respondent. There is a variable V224 that is the number of births in the birth history). So I know I can use this somehow to determine which list to grab the first birth from.
But I wanted to check to see if there are any suggestions out there before I spend the time doing this.
Thanks
Lisa
|
|
|
Re: Birth Variables - V212 (Tanzania 2012) [message #829 is a reply to message #824] |
Wed, 09 October 2013 16:17 |
Reduced-For(u)m
Messages: 292 Registered: March 2013
|
Senior Member |
|
|
Lisa,
A couple of options. First, it sounds like you are using the "individual recode"? Is that right? If you want to use the birth order and birth date questions, you could write a code for SAS that does the following (except I don't know SAS, so I'll write it in pseudo-Stata that gives the idea).
egen FirstBirthYear = rowmin(b2_01 b2_02 ... b2_N)
*find the smallest value of a birth year for each woman
gen AgeAtFirstBirth = FirstBirthYear - v010
*generate her age as her birth year - that birth year.
This is imperfect in that it could be off by a year (you calculate 22 but the woman was actually 21 or 23). You could add the months to this to make it more perfect.
Or, you could use the Birth Recode that includes all births to woman, and try something like:
egen FirstYearBirth = min(byear), by(womanid)
*for each observation with the same womanid, generate a variable for all those observations with the value of the lowest birth year
gen AgeAtFirstBirth = FirstBirthYear-byear
....I'm not sure which form would work better with SAS, but the "rowmin" command in Stata is pretty good when trying to do something like this. I'd bet stata has something like that.
This help?
|
|
|