Title: Undernutrition among Women in Ethiopia
The data for this study came from the 2011 Ethiopian Demographic and Health survey (EDHS).
Women’s body mass index (BMI) (kg/m2) is used as a measure of women’s nutritional status, and those with a BMI value less than 18.5 are considered to be at risk of chronic energy deficiency (CED).
1: BMI<18.5. 0: BMI>=18.5
Age: (1=‘15-19’; 2:3=‘20-29’; 4:5=‘30-39’; 6:7=‘40-49’)
Marital Status:(0=“1Never married”; 1:2=“2Married/Living together”;3:5=“3Widowed/Divorced/Separated)
Education(0=‘No education’; 1=‘Primary’; 2:3=‘secodary and above’)
Occupation(“0=‘Unemployed/Not known’; 1:3=‘Non-manual/Professional’; 4:9=‘Agricultural/Manual(skilled/unskilled)’; 96=‘Unemployed/Missing/not known’; 99=‘Unemployed/Missing/not known’”)
WealthIndex (1:2=‘1Poor’; 3=‘2Middle’; 4:5=‘3Rich’)
Children ever born(parity): “0=‘0’; 1:2=‘1-2’; 3:4=‘3-4’; 5:18=‘5+’)
Residence: (‘1=“Urban”; 2=“Rural”; else=NA’)
library(lmtest)
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
library (car)
library(readstata13)
library(foreign)
library(survey)
## Loading required package: grid
## Loading required package: Matrix
## Loading required package: survival
##
## Attaching package: 'survey'
## The following object is masked from 'package:graphics':
##
## dotchart
library(questionr)
library(stargazer)
##
## Please cite as:
## Hlavac, Marek (2015). stargazer: Well-Formatted Regression and Summary Statistics Tables.
## R package version 5.2. http://CRAN.R-project.org/package=stargazer
dat2<-read.dta("C:/Users/fikre_001/Google Drive/Dem7283/DHS Resources/ET_2011_DHS_01242017_168_103714/etir61dt/ETIR61FL.dta", convert.factors = F)
# The dependent variable is Body mass index
mean(dat2$v445, na.rm=T)
## [1] 2305.865
# devide the dependent variable (bmi) by 100.
dat2$bmi<-dat2$v445/100
mean(dat2$bmi, na.rm=T)
## [1] 23.05865
# Select women who were not pregnant at the time of the survey. Since pregnancy has an effect on the measure of body mass index.
# Recode BMI in to ( 1: BMI<18.5 as "CED", 0: BMI>=18.5)
dat3 <- dat2[dat2$v213!=1,]
dat3$binbmi <- 0
dat3[dat3$bmi < 18.5,]$binbmi <- 1
table(dat3$binbmi)
##
## 0 1
## 10939 4299
table(dat3$v501)
##
## 0 1 2 3 4 5
## 4406 8315 643 577 912 385
table(dat3$v012)
##
## 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
## 894 766 647 869 530 907 379 540 461 444 951 524 418 606 311 809 214 315
## 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
## 260 247 734 272 259 391 145 611 128 207 170 140 426 172 144 225 122
table(dat3$v013)
##
## 1 2 3 4 5 6 7
## 3706 2731 2810 1845 1801 1256 1089
#recode the independent varaibles in to a meaningful manner
# Marital Status
dat3$marst<-recode(dat3$v501, recodes='0="1Never married"; 1:2="2Married/Living together";3:5="3Widowed/Divorced/Separated"; else=NA')
#Education
dat3$educ<-recode(dat3$v106, recodes="0='1No education'; 1='2Primary'; 2:3='3secodary and above'; else=NA", as.factor.result=T)
table(dat3$educ)
##
## 1No education 2Primary 3secodary and above
## 7465 5474 2299
table(dat3$marst)
##
## 1Never married 2Married/Living together
## 4406 8958
## 3Widowed/Divorced/Separated
## 1874
table(dat3$occup)
## < table of extent 0 >
dat3$educ<-recode(dat3$v106, recodes="0='educ1no education'; 1='educ2primary'; 2:3='educ3secodary and above'; else=NA", as.factor.result=T)
#Occupation
dat3$occup<-recode(dat3$v717, recodes="0='1Unemployed/Missing/not known'; 1:3='2Non-manual/Professional'; 4:9='3Agricultural/Manual(skilled/unskilled)';96='1Unemployed/Missing/not known'; 99='1Unemployed/Missing/not known'; else=NA", as.factor.result=T)
#Age
dat3$age<-recode(dat3$v013, recodes="1='15-19'; 2:3='20-29'; 4:5='30-39'; 6:7='40-49'; else=NA", as.factor.result=T)
table(dat3$age)
##
## 15-19 20-29 30-39 40-49
## 3706 5541 3646 2345
#Children Ever Born
dat3$parity<-recode(dat3$v201, recodes="0='0'; 1:2='1-2'; 3:4='3-4'; 5:18='5+'; else=NA", as.factor.result=T)
table(dat3$parity)
##
## 0 1-2 3-4 5+
## 5406 3416 2438 3978
#wealth Index
dat3$wealthindex<-recode(dat3$v190, recodes="1:2='1Poor'; 3='2Middle'; 4:5='3Rich'; else=NA", as.factor.result=T)
table(dat3$wealthindex)
##
## 1Poor 2Middle 3Rich
## 5499 2085 7654
#Residence
dat3$residence<-recode(dat3$v102, recodes='1="Urban"; 2="Rural"; else=NA')
# Calculate the DHS sample weight
dat3$weight<-dat3$v005/1000000
options(survey.lonely.psu = "adjust")
des<-svydesign(ids=~1, strata=~v022, weights=~weight, data = dat3[is.na(dat3$weight)==F,])
cat<-svytable(~binbmi+educ, design =des)
#Education
#with Survey Design
prop.table(cat<-svytable(~binbmi+educ, design =des), margin = 2)*100
## educ
## binbmi educ1no education educ2primary educ3secodary and above
## 0 74.81790 70.99769 83.04315
## 1 25.18210 29.00231 16.95685
# with out survey Design
prop.table(table(dat3$binbmi, dat3$educ), margin=2)*100
##
## educ1no education educ2primary educ3secodary and above
## 0 69.52445 70.35075 82.55763
## 1 30.47555 29.64925 17.44237
#Marital Status
# with Survey Design
prop.table(cat<-svytable(~binbmi+marst, design =des), margin = 2)*100
## marst
## binbmi 1Never married 2Married/Living together 3Widowed/Divorced/Separated
## 0 69.44184 76.04975 77.73407
## 1 30.55816 23.95025 22.26593
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$marst), margin=2)*100
##
## 1Never married 2Married/Living together 3Widowed/Divorced/Separated
## 0 69.06491 72.42688 75.13340
## 1 30.93509 27.57312 24.86660
#Marital Status
# with Survey Design
prop.table(cat<-svytable(~binbmi+marst, design =des), margin = 2)*100
## marst
## binbmi 1Never married 2Married/Living together 3Widowed/Divorced/Separated
## 0 69.44184 76.04975 77.73407
## 1 30.55816 23.95025 22.26593
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$marst), margin=2)*100
##
## 1Never married 2Married/Living together 3Widowed/Divorced/Separated
## 0 69.06491 72.42688 75.13340
## 1 30.93509 27.57312 24.86660
#Marital Status
# with Survey Design
prop.table(cat<-svytable(~binbmi+marst, design =des), margin = 2)*100
## marst
## binbmi 1Never married 2Married/Living together 3Widowed/Divorced/Separated
## 0 69.44184 76.04975 77.73407
## 1 30.55816 23.95025 22.26593
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$marst), margin=2)*100
##
## 1Never married 2Married/Living together 3Widowed/Divorced/Separated
## 0 69.06491 72.42688 75.13340
## 1 30.93509 27.57312 24.86660
## Occupation
# with Survey Design
prop.table(cat<-svytable(~binbmi+occup, design =des), margin = 2)*100
## occup
## binbmi 1Unemployed/Missing/not known 2Non-manual/Professional
## 0 73.89366 78.06614
## 1 26.10634 21.93386
## occup
## binbmi 3Agricultural/Manual(skilled/unskilled)
## 0 72.60727
## 1 27.39273
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$occup), margin=2)*100
##
## 1Unemployed/Missing/not known 2Non-manual/Professional
## 0 69.29600 79.81054
## 1 30.70400 20.18946
##
## 3Agricultural/Manual(skilled/unskilled)
## 0 69.84879
## 1 30.15121
## Children Ever Born (Parity)
# with Survey Design
prop.table(cat<-svytable(~binbmi+parity, design =des), margin = 2)*100
## parity
## binbmi 0 1-2 3-4 5+
## 0 70.58895 77.53118 78.42045 74.18817
## 1 29.41105 22.46882 21.57955 25.81183
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$parity), margin=2)*100
##
## 0 1-2 3-4 5+
## 0 70.03330 75.67330 72.51846 70.38713
## 1 29.96670 24.32670 27.48154 29.61287
## Age
# with Survey Design
prop.table(cat<-svytable(~binbmi+age, design =des), margin = 2)*100
## age
## binbmi 15-19 20-29 30-39 40-49
## 0 65.33506 79.78494 77.17317 72.15844
## 1 34.66494 20.21506 22.82683 27.84156
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$age), margin=2)*100
##
## 15-19 20-29 30-39 40-49
## 0 64.32812 75.81664 74.35546 70.06397
## 1 35.67188 24.18336 25.64454 29.93603
## Residence
# with Survey Design
prop.table(cat<-svytable(~binbmi+residence, design =des), margin = 2)*100
## residence
## binbmi Rural Urban
## 0 72.06935 81.11858
## 1 27.93065 18.88142
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$residence), margin=2)*100
##
## Rural Urban
## 0 66.95883 81.43194
## 1 33.04117 18.56806
## Wealth Index
# with Survey Design
prop.table(cat<-svytable(~binbmi+wealthindex, design =des), margin = 2)*100
## wealthindex
## binbmi 1Poor 2Middle 3Rich
## 0 69.62378 74.34625 77.95120
## 1 30.37622 25.65375 22.04880
#with out Survey Design
prop.table(table(dat3$binbmi, dat3$wealthindex), margin=2)*100
##
## 1Poor 2Middle 3Rich
## 0 62.35679 70.02398 79.04364
## 1 37.64321 29.97602 20.95636
From the above descriptive statistics we can see that the prevalence of Chronic Energy Deficiency (BMI<18.5) is higher in the sample than the population.
fit1<-lm(binbmi~educ+age+parity+marst+residence+wealthindex, dat=dat3)
summary(fit1)
##
## Call:
## lm(formula = binbmi ~ educ + age + parity + marst + residence +
## wealthindex, data = dat3)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.4873 -0.3328 -0.2135 0.5832 0.9116
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.471994 0.011183 42.208 < 2e-16 ***
## educeduc2primary 0.000255 0.009228 0.028 0.977958
## educeduc3secodary and above -0.040732 0.013451 -3.028 0.002465 **
## age20-29 -0.086807 0.011772 -7.374 1.74e-13 ***
## age30-39 -0.079047 0.015196 -5.202 2.00e-07 ***
## age40-49 -0.042091 0.017273 -2.437 0.014826 *
## parity1-2 0.015047 0.015025 1.001 0.316619
## parity3-4 0.024667 0.016926 1.457 0.145039
## parity5+ 0.005110 0.017948 0.285 0.775842
## marst2Married/Living together -0.055406 0.014891 -3.721 0.000199 ***
## marst3Widowed/Divorced/Separated -0.065492 0.016906 -3.874 0.000108 ***
## residenceUrban -0.069220 0.010779 -6.422 1.39e-10 ***
## wealthindex2Middle -0.079103 0.011347 -6.971 3.28e-12 ***
## wealthindex3Rich -0.121382 0.010160 -11.947 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.44 on 15224 degrees of freedom
## Multiple R-squared: 0.04496, Adjusted R-squared: 0.04414
## F-statistic: 55.13 on 13 and 15224 DF, p-value: < 2.2e-16
fit2<-svyglm(binbmi~educ + age + parity + marst + residence + wealthindex, des, family=gaussian)
summary(fit2)
##
## Call:
## svyglm(formula = binbmi ~ educ + age + parity + marst + residence +
## wealthindex, des, family = gaussian)
##
## Survey design:
## svydesign(ids = ~1, strata = ~v022, weights = ~weight, data = dat3[is.na(dat3$weight) ==
## F, ])
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.396961 0.016365 24.256 < 2e-16 ***
## educeduc2primary 0.016921 0.012832 1.319 0.18731
## educeduc3secodary and above -0.044343 0.018659 -2.377 0.01749 *
## age20-29 -0.115817 0.016365 -7.077 1.53e-12 ***
## age30-39 -0.084899 0.022662 -3.746 0.00018 ***
## age40-49 -0.038320 0.025151 -1.524 0.12763
## parity1-2 0.018692 0.022873 0.817 0.41382
## parity3-4 0.003436 0.025124 0.137 0.89121
## parity5+ 0.003617 0.027555 0.131 0.89558
## marst2Married/Living together -0.043949 0.022445 -1.958 0.05024 .
## marst3Widowed/Divorced/Separated -0.061918 0.024054 -2.574 0.01006 *
## residenceUrban -0.058245 0.016322 -3.569 0.00036 ***
## wealthindex2Middle -0.046529 0.014872 -3.129 0.00176 **
## wealthindex3Rich -0.051541 0.014780 -3.487 0.00049 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for gaussian family taken to be 0.1851432)
##
## Number of Fisher Scoring iterations: 2
stargazer(fit1, fit2, style="demography", type="text", column.labels = c("OLS", "Weights", "Survey"),title = "Regression models for BMI using survey data - EDHS 2011",
covariate.labels=c("Primary School", "Secondary and above", " Age 20-29", "Age 30-39", "Age 40-49", "Parity 1-2", "Parity 3-4", "Parity 5+" ,
"Married /Living Togther", "Widowed/Divorced/Separated", "Residence Urban", "Wealth Index Middle" , "Wealth Index Rich" ),
keep.stat="n", model.names=F, align=T, ci=T)
##
## Regression models for BMI using survey data - EDHS 2011
## -------------------------------------------------------------
## binbmi
## OLS Weights
## Model 1 Model 2
## -------------------------------------------------------------
## Primary School 0.0003 0.017
## (-0.018, 0.018) (-0.008, 0.042)
## Secondary and above -0.041** -0.044*
## (-0.067, -0.014) (-0.081, -0.008)
## Age 20-29 -0.087*** -0.116***
## (-0.110, -0.064) (-0.148, -0.084)
## Age 30-39 -0.079*** -0.085***
## (-0.109, -0.049) (-0.129, -0.040)
## Age 40-49 -0.042* -0.038
## (-0.076, -0.008) (-0.088, 0.011)
## Parity 1-2 0.015 0.019
## (-0.014, 0.044) (-0.026, 0.064)
## Parity 3-4 0.025 0.003
## (-0.009, 0.058) (-0.046, 0.053)
## Parity 5+ 0.005 0.004
## (-0.030, 0.040) (-0.050, 0.058)
## Married /Living Togther -0.055*** -0.044
## (-0.085, -0.026) (-0.088, 0.00004)
## Widowed/Divorced/Separated -0.065*** -0.062*
## (-0.099, -0.032) (-0.109, -0.015)
## Residence Urban -0.069*** -0.058***
## (-0.090, -0.048) (-0.090, -0.026)
## Wealth Index Middle -0.079*** -0.047**
## (-0.101, -0.057) (-0.076, -0.017)
## Wealth Index Rich -0.121*** -0.052***
## (-0.141, -0.101) (-0.081, -0.023)
## Constant 0.472*** 0.397***
## (0.450, 0.494) (0.365, 0.429)
## N 15,238 15,238
## -------------------------------------------------------------
## *p < .05; **p < .01; ***p < .001