The DHS Program User Forum
Discussions regarding The DHS Program data and results
Home » Countries » Bangladesh » Determining child's birth order
Determining child's birth order [message #26757] Wed, 26 April 2023 11:34 Go to next message
jangels1 is currently offline  jangels1
Messages: 4
Registered: February 2023
Member
I'm working with the birth recode file of the Bangladesh 2017-18 survey and I'm trying to tabulate child's birth order by place of delivery (in other words: does place of delivery vary by birth order of the child?). If it's easier, this could be equally well represented by a tab of mother's parity and place of delivery.

This dataset seems not to contain the BORD variable, and bidx doesn't really serve my purpose because birth order is what I'm after. Is there a way to calculate birth order? Thanks!
Re: Determining child's birth order [message #26766 is a reply to message #26757] Thu, 27 April 2023 07:57 Go to previous messageGo to next message
Bridgette-DHS is currently offline  Bridgette-DHS
Messages: 3199
Registered: February 2013
Senior Member

Following is a response from Senior DHS staff member, Tom Pullum:

If you have bidx or bord, but not the other, you can use this algebraic relationship: bidx+bord=v201+1. For example, if a woman had 4 children (v201=4), the most recent birth (with bidx=1) will be the 4th birth (bord=1). That is, 1+4=4+1. You can get bord from bidx with bord=v201+1-bidx.

If you are trying to match "birth order" in some tables, what's tabulated is not really bord but another variable that takes account of multiple births. For example, in the BD 2017-18 final report, tables 9.15-9.18, birth order is constructed from bord as follows. (For this table the loop for "border" only needs to go from 1 to 5 but for other purposes it could go as far as the maximum value of v201 in the survey.)
* Birth order
* To match birth order in the tables, bord must be modified to include multiple births 
gen border=.
forvalues ll=1/5 {
replace border=`ll' if (bord==`ll' & b0==0) | (bord==`ll'+1 & b0==2) | (bord==`ll'+2 & b0==3)
} 
gen     birth_order=1 if border==1
replace birth_order=2 if border>1
replace birth_order=3 if border>3
replace birth_order=4 if border>5
label variable birth_order "Birth order"
label define birth_order 1 "1" 2 "2-3" 3 "4-5" 4 "6+"
label values birth_order birth_order
Re: Determining child's birth order [message #26767 is a reply to message #26766] Thu, 27 April 2023 08:33 Go to previous message
jangels1 is currently offline  jangels1
Messages: 4
Registered: February 2023
Member
Wonderful, thank you so much!
Previous Topic: Number of observations and age at time of birth
Next Topic: Replicating BDHS 2011 Table 15.5.1 & 15.5.2 Table on Diabetes prevalence
Goto Forum:
  


Current Time: Fri Nov 22 19:10:52 Coordinated Universal Time 2024