The DHS Program User Forum      
Discussions regarding The DHS Program data and results
Home » Countries » Nepal » Breastfeeding
Breastfeeding [message #13213] Thu, 05 October 2017 14:47 Go to next message
Sanjhama is currently offline  Sanjhama
Messages: 5
Registered: July 2017
Member
Hello,

Thank you for this platform to resolve our confusions.

I am using Nepal DHS of 2011 to analyse the breastfeeding status. However, my results are not matching with the one in the report. The table 11.2 Initial breastfeeding in report says the total number of last born children ever breastfed in last two year is 1993 and total children is 2030. However, mine results are slightly different. It is 1965 instead of 1993 and 1969 instead of 2030. I have taken into account (B9=1, V008-B3<24, BIDX=1 and weight).
When using M4 for the frequency analysis, total ever brestfed, not currently is 67, never breastfeed is 4 and still breastfeeding is 1898 (making total of 1969).

Ever breastfed would be 67+ 1898 = 1965.

Please help me locate where I am wrong. I am using SPSS.

Thank you once again.
Re: Breastfeeding [message #13215 is a reply to message #13213] Thu, 05 October 2017 16:57 Go to previous messageGo to next message
Trevor-DHS is currently offline  Trevor-DHS
Messages: 533
Registered: January 2013
Senior Member
You don't need B9 - this is all last born children irrespective of whether they live with their mother or not, or even if they are dead - See the footnote to the table. I'm matching exactly with the following code:
cd "C:\Data\DHS_SPSS".
get file="NPKR60FL.SAV".

* Last child born in the last 2 years.
* age in months.
compute age = v008-b3.
variable labels age "Age in months".
* keep if under 24 months and are the last child.
select if age<24 & bidx=1.

compute wt=v005/1000000.
weight by wt.
freq m4.

M4 Duration of breastfeeding     
                                                     Frequency    Percent Valid Percent Cumulative Percent
Valid 93 Ever breastfed, not currently breastfeeding        95        4.7           4.7           4.7
      94 Never breastfed                                    37        1.8           1.8           6.5
      95 Still breastfeeding                              1898       93.5          93.5         100.0
      Total                                               2030      100.0         100.0
Ever breastfed, but not currently (95) plus still breastfeeding (1898) = 1993 as in the table.

However, if you want to restrict to youngest child under two years living with their mother, as in table 11.3, you would need code like the following:
get file="NPKR60FL.SAV".

* Cases should be sorted already, but in case they are not.
sort cases by caseid bidx.
* Last child in the last 2 years living with mother.
* age in months.
compute age = v008-b3.
variable labels age "Age in months".
* keep if under 24 months and living with mother.
select if age<24 & b9=0.
* ... and keep the last born of those. If caseid is the same as the prior case, then not the last born.
select if caseid <> lag(caseid).
* generate variable for still breastfeeding.
recode m4 (95=1)(else=0) into bf.
variable labels bf "Currently breastfeeding".
value labels bf 1  "Still breastfeeding" 0  "Not breastfeeding".
print formats bf (f1.0).

* generate age groupings.
recode age (0 thru 1 = 0)(2 thru 3 = 1)(4 thru 5 = 2)(6 thru 8 = 3)(9 thru 11 = 4)(12 thru 17 = 5)(18 thru 23 = 6) into ageg.
variable labels ageg "Age groups".
value labels ageg 0 "0-1" 1 "2-3" 2 "4-5" 3 "6-8" 4 "9-11" 5 "12-17" 6 "18-23".
print formats ageg (f1.0).

* tabulate current breastfeeding status by age group.
compute wt=v005/1000000.
weight by wt.
crosstabs tables=ageg by bf /cells=count row /count=asis.

Re: Breastfeeding [message #13231 is a reply to message #13215] Sat, 07 October 2017 15:47 Go to previous messageGo to next message
Sanjhama is currently offline  Sanjhama
Messages: 5
Registered: July 2017
Member
Thank you very much. This equation helped me solve my problem.

However, I am now struggling with another equation; exclusive breastfeeding and breastfeeding along with drinking or having other things like water, etc. My result differ by few percentages when I followed the below codes. Therefore, I think I must be going wrong somewhere.

COMPUTE age=V008 - B3.
EXECUTE.

* Select children living with the mother.
FILTER OFF.
USE ALL.
SELECT IF (B9=0).
EXECUTE.

AGGREGATE
/OUTFILE=* MODE=ADDVARIABLES
/BREAK=V001 V002 V003
/BIDX_min=MIN(BIDX).

SELECT IF (BIDX_min = BIDX) .
EXECUTE.

* Select children age below 24.
FILTER OFF.
USE ALL.
SELECT IF ( age < 24).
EXECUTE.


* Create age gropus.
RECODE age (0 thru 1=1) (2 thru 3=2) (4 thru 5=3) (6 thru 8=4) (9 thru 11=5) (12 thru 17=6) (18
thru 23=7) INTO age_grp.
VARIABLE LABELS age_grp 'age group'.
EXECUTE.

VALUE LABELS age_grp 1 " 0-1 month" 2 "2-3 months" 3 "4-5 months" 4 "6-8 months" 5 "9-11 months" 6 "12-17 months" 7 "18-23 months".

*23-06-2017.
COMPUTE water = 0.
EXECUTE.

COMPUTE liquids = 0.
EXECUTE.

COMPUTE milk= 0.
EXECUTE.

COMPUTE solid= 0.
EXECUTE.

COMPUTE bottle= 0.
EXECUTE.
COMPUTE breast= 0.
EXECUTE.

* to determine if child is given water.

DO IF (V409 >= 1 & V409 <= 7).
RECODE water (0=1).
END IF.
EXECUTE.

*To determine if Child is given liquids.
DO IF ((V410 >= 1 & V410 <= 7) | (V412c >= 1 & V412c <= 7) | (V413 >= 1 & V413 <= 7)) .
RECODE liquids (0=1).
END IF.
EXECUTE.

* to determine if child is given milk.

DO IF ((V411 >= 1 & V411 <= 7) | (V411a >= 1 & V411a <= 7)).
RECODE milk (0=1).
END IF.
EXECUTE.

*To determine if child drank from bottle with nipple.

DO IF (M38= 1 ).
RECODE bottle (0=1).
END IF.
EXECUTE.

*To determine if Child is given Solid.

DO IF ((V412A >=1 & V412A<=7) | (V414E >= 1 & V414E <= 7) | (V414F >=1 & V414F <=7) | (V414G >=1 & V414G <=7) | (V414H >=1 & V414H <=7) |
(V414I >=1 & V414I <=7) | (V414J >=1 & V414J <=7) | (V414K >=1 & V414K <=7) | (V414L >=1 & V414L<=7) | (V414M>=1 & V414M<=7) |
(V414N >=1 & V414N <=7) | (V414O >=1 & V414O <=7) | (V414P >=1 & V414P <=7) | (V414S >=1 & V414S <=7) | (V414V >=1 & V414V <=7)).
RECODE Solid (0=1).
END IF.
EXECUTE.

*To determine if child is still breastfeeding.

DO IF (M4= 95).
RECODE breast (0=1).
END IF.
EXECUTE.
VALUE LABELS breast 0 "Not breastfeeding" 1 " Still breastfeeding".

*Matching Table 11.3 for exclusive breast feeding in 0-5 month children.

COMPUTE feeding=7.
EXECUTE.

* exclusive breastfeeding.
DO IF (water = 0 & liquids = 0 & Milk = 0 & Solid = 0).
RECODE feeding (7=1).
END IF.
EXECUTE.

* Breastfeeding + water.
DO IF (water = 1 & liquids = 0 & Milk = 0 & Solid = 0).
RECODE feeding (7=2).
END IF.
EXECUTE.

* Breastfeeding + liquids.
DO IF ( liquids = 1 & milk = 0 & solid = 0).
RECODE feeding (7=3).
END IF.
EXECUTE.

* Breastfeeding + milk.
DO IF (milk = 1 & solid = 0).
RECODE feeding (7=4).
END IF.
EXECUTE.

* Breastfeeding + solid.
DO IF (solid = 1).
RECODE feeding (7=5).
END IF.
EXECUTE.

* Not breastfeeding.
DO IF (breast= 0).
RECODE feeding (7=0).
END IF.
EXECUTE.

VALUE LABELS feeding 0 "Not breastfeeding" 1 "exclusive breastfeeding" 2 "+Water" 3 "+Liquids" 4 "+Other Milk" 5 "+Solids".

COMPUTE wt=v005/1000000.
EXECUTE.



Look forward for your help.

Sajama
  • Attachment: Output1.spv
    (Size: 26.97KB, Downloaded 8 times)
Re: Breastfeeding [message #13241 is a reply to message #13231] Sun, 08 October 2017 17:46 Go to previous message
Sanjhama is currently offline  Sanjhama
Messages: 5
Registered: July 2017
Member
Hi Again,

Would like to write some more on my result.

I am able to get the write number of result as in result for table 11.2 for the categories, percentage ever breastfed, number of last born children and number of last born ever breastfed crosstab by sex. However, for table 11.3, result are same for "not breastfeeding", "Number of youngest children under two years living with their mother", "Number of all children under two years". Percentage currently breastfeeding is slightly different, mine is 98.5 for 0-1 months instead of 98.2 when I followed the code given by you in previous posts. When value for "Number of youngest children under two years living with their mother" and "Number of all children under two years" are same, how can the percentage vary for currently breastfeeding??

Another main problem is with exclusive breastfeeding and breastfeeding along with water and so on, the percentages different by few numbers (SPSS output file is attached in previous post) when I followed the codes attached in previous file. Here when calculating this, is it essential to sort by caseid and BIDX?

I am bit confused on this function too. select if caseid <> lag(caseid). If you could please let me know.
Looking forward for your support soon.

Thanking you in advance again.
Sajama

[Updated on: Sun, 08 October 2017 17:55]

Report message to a moderator

Previous Topic: 2016 DHS data
Goto Forum:
  


Current Time: Tue Oct 17 03:46:44 Eastern Daylight Time 2017