The DHS Program User Forum
Discussions regarding The DHS Program data and results
Home » Topics » Nutrition and Anthropometry » Discrepancy with estimates from Tables 11.1 and 11.2 in Niger 2012 DHS
Discrepancy with estimates from Tables 11.1 and 11.2 in Niger 2012 DHS [message #22017] Wed, 20 January 2021 07:20 Go to next message
dgodha
Messages: 41
Registered: November 2016
Location: India
Member
Dear DHS Experts,

I am estimating early initiation of breastfeeding (BF), exclusive BF, and BF associated with water for Niger using the following commands but my estimates do not match those in Tables 11.1 and 11.2 of Niger 2012 DHS report.
*Use Niger 2012\NIKR61FL.DTA
*Child's age
*tab b19		/*Not found*/
gen age= v008-b3
tab age

*Child age-group
recode age (0/1=1 "0-1") (2/3=2 "2-3") (4/5=3 "4-5") (6/8=4 "6-8") ///
(9/11=5 "9-11") (12/17=6 "12-17") (18/23=7 "18-23") (else=.), gen(child_age_grp)
tab child_age_grp

/*Early initiation of BF*/
*Children born in the last 24 months who were put to the breast within one hour of birth
gen early_init=0 if age<24
replace early_init=1 if m34<101 & age<24
la val early_init A
label var early_init "Early initiation of BF"
tab v013 early_init

*Exclusive breast feeding
gen water=0
gen liquids=0
gen milk=0
gen solids=0
gen breast=0
gen bottle=0

*TO DETERMINE IF CHILD IS GIVEN WATER, SUGAR WATER, JUICE, TEA OR OTHER.
replace water=1 if (v409>=1 & v409<=7)
                                                                   
* IF GIVEN OTHER LIQUIDS
foreach xvar of varlist v409a v410 v410*  v413* {
replace liquids=1 if `xvar'>=1 & `xvar'<=7
}

cap replace liquids=1 if v412c>=1 & v412c<=7
                                                                                                
* IF GIVEN POWDER/TINNED MILK, FORMULA OR FRESH MILK
foreach xvar of varlist v411 v411a v412 v414p {
replace milk=1 if `xvar'>=1 & `xvar'<=7
}

* IF STILL BREASTFEEDING
replace breast=1 if m4==95 

* IF WAS EVER BOTTLE FED
replace bottle=1 if m38==1 

*IF GIVEN ANY SOLID FOOD
foreach xvar of varlist v414* m39a{
replace solids=1 if `xvar'>=1 & `xvar'<=7
}
replace solids=1 if v412a==1 | v412b==1 
                
gen diet=7
replace diet=0 if water==0 & liquids==0 & milk==0 & solids==0
replace diet=1 if water==1 & liquids==0 & milk==0 & solids==0
replace diet=2 if            liquids==1 & milk==0 & solids==0 
replace diet=3 if                         milk==1 & solids==0 
replace diet=4 if                         milk==0 & solids==1 
replace diet=5 if                         milk==1 & solids==1 
replace diet=6 if breast==0 

label define diet 0"given only milk" 1"given only water" 2"given only liquids" 3"given only milks" ///
4"given only solids" 5"given only milk and solids" 6"not still breastfeeding" ///
7"not now being breastfed" 
label var diet "Breastfeeding status1"
label val diet diet

recode diet (6/7=0 "Not breastfed")(0=1 "Exclusively breastfed")(1=2 "Breastfeeding and water only")	(2=3 "Breastfed and liquids, no milks")(3=4 "Breastfed and other milks")(4/5=5 "Breastfed and food complement"), gen(BF)


My estimates are as follows:
*Check with Table 11.1 (Page 161)
svy:tab early_init ,col percent
*Population size = 5,335.4724; 51.03%
svy:tab early_init if b9==0,col percent
*Population size = 5,047.2482; 52.4%

DHS Report: Population size = 5,079; 52.9%

*Check with Table 11.2 (Page 163)
svy:tab child_age_grp BF if b9==0, row percent nolab

For 0-1 month
Non allaités 2.7 (DHS estimate) 4.2 (My estimate)
Exclusivement allaités 34 (DHS estimate) 33.5 (My estimate)
Allaités et eau seulement 52.5 (DHS estimate) 51.7 (My estimate)

For 2-3 months
Non allaités 1.3 (DHS estimate) 2.9 (My estimate)
Exclusivement allaités 24 (DHS estimate) 23.6 (My estimate)
Allaités et eau seulement 61.4 (DHS estimate) 60.4 (My estimate)

For 4-5 months
Non allaités 1.6 (DHS estimate) 2.3 (My estimate)
Exclusivement allaités 13.3 (DHS estimate) 13.2 (My estimate)
Allaités et eau seulement 52.1 (DHS estimate) 51.8 (My estimate)

Though not shown here, the count is an exact match. I will request your guidance in resolving this.

Many thanks
Deepali


Deepali
Re: Discrepancy with estimates from Tables 11.1 and 11.2 in Niger 2012 DHS [message #22089 is a reply to message #22017] Fri, 29 January 2021 09:52 Go to previous messageGo to next message
Shireen-DHS is currently offline  Shireen-DHS
Messages: 66
Registered: August 2020
Location: USA
Senior Member
Dear Deepali,

The code below will match the tables. This code is available on on code share library hosted on the GitHub website (https://github.com/DHSProgram). Please read the readme file first. The indicators you are interested in are found here ( https://github.com/DHSProgram/DHS-Indicators-Stata/tree/mast er/Chap11_NT). Before running any code please read the notes in the main file or the specific do file you are using.

For Table 11.1:
Actually the denominator for the early initiation of breastfeeding is 5,143 (see the 4th column in the table).
The code below matches the table.

*open KR file

**** child's age ****
gen age = v008 - b3

*code copied from the NT_BF_INIT.do file

//Start breastfeeding within 1 hr
gen nt_bf_start_1hr= (m4!=94 & m4!=99) & (inrange(m34,0,100)) if (midx==1 & age<24)
label values nt_bf_start_1hr yesno
label var nt_bf_start_1hr "Started breastfeeding within one hour of birth - last-born in the past 2 years"

gen wt=v005/1000000

tab nt_bf_start_1hr [iw=wt]
*I obtain 52.9% and 5143 cases as in the table.

For Table 11.2:
For this indicator you need to select for the youngest child under 24 months living with the mother. As shown in the NTmain.do file on line 97 this is done as follows:

* Selecting for youngest child under 24 months and living with mother
keep if age < 24 & b9 == 0
* if caseid is the same as the prior case, then not the last born
keep if _n == 1 | caseid != caseid[_n-1]

*note this will drop cases so it should only be done if you are analyzing IYCF indicators.
*the following code was copied from the NT_IYCF.do file from line 49 to 86 to get the breastfeeding status indicator.

//currently breastfed
gen nt_bf_curr= m4==95
label values nt_bf_curr yesno
label var nt_bf_curr "Currently breastfeeding - last-born under 2 years"

//breastfeeding status
gen water=0
gen liquids=0
gen milk=0
gen solids=0

*Child is given water
replace water=1 if (v409>=1 & v409<=7)

*Child given liquids
foreach xvar of varlist v409a v410 v410a v412c v413*{
replace liquids=1 if `xvar'>=1 & `xvar'<=7
}

*Given powder/tinned milk, formula, or fresh milk
foreach xvar of varlist v411 v411a {
replace milk=1 if `xvar'>=1 & `xvar'<=7
}

*Given any solid food
foreach xvar of varlist v414* {
replace solids=1 if `xvar'>=1 & `xvar'<=7
}
replace solids=1 if v412a==1 | v412b==1 | m39a==1
gen nt_bf_status=1
replace nt_bf_status=2 if water==1
replace nt_bf_status=3 if liquids==1
replace nt_bf_status=4 if milk==1
replace nt_bf_status=5 if solids==1
replace nt_bf_status=0 if nt_bf_curr==0
label define bf_status 0"not bf" 1"exclusively bf" 2"bf & plain water" 3"bf & non-milk liquids" 4"bf & other milk" 5"bf & complemenatry foods"
label values nt_bf_status bf_status
label var nt_bf_status "Breastfeeding status for last-born child under 2 years"


//Age categories
cap recode age (0/1=1 " 0-1") (2/3=2 " 2-3") (4/5=3 " 4-5") (6/8=4 " 6-8") (9/11=5 " 9-11") (12/17=6 " 12-17") (18/23=7 " 18-23") , gen(agecats)


tab agecats nt_bf_status [iw=wt], row
* This matches the final report (Table 11.2) by age categories. For instance I obtain for age 0-1 I obtain 2.7% for not breastfed and 415 cases.

Thank you.

Shireen Assaf
The DHS Program
Re: Discrepancy with estimates from Tables 11.1 and 11.2 in Niger 2012 DHS [message #22121 is a reply to message #22089] Thu, 04 February 2021 08:00 Go to previous message
dgodha
Messages: 41
Registered: November 2016
Location: India
Member
Hi Shireen,

Thank you for your guidance.

Deepali


Deepali
Previous Topic: Food security- South Africa DHS 2016
Next Topic: calculation of exclusive breastfeeding
Goto Forum:
  


Current Time: Thu May 6 13:02:34 Coordinated Universal Time 2021