Home » Topics » Child Health » Child Vaccination_Ethiopia (2016 Ethiopian Demographic and Health Survey)
Re: Child Vaccination_Ethiopia [message #16182 is a reply to message #16180] |
Mon, 19 November 2018 02:48 |
Mlue
Messages: 92 Registered: February 2017 Location: North West
|
Senior Member |
|
|
Hello
Try this one.
/*
Ethiopia Demographic and Health Survey, 2016
BIRTHS RECODE
*/
clear all
set matsize 800
set mem 1g
set maxvar 9000
*cd "..."
use "ETBR70FL", clear
set more off
********************************************************************************
** WEIGHT VARIABLE
gen weight = v005/1000000
********************************************************************************
** SURVEY SET
gen psu = v021
gen strata = v023
svyset psu [pw = weight], strata(strata) vce(linearized)
*svydes
********************************************************************************
// RENAME
rename v013 age
rename v106 education
rename v190 wealth
rename v025 residence
rename v024 region
*rename sdist district
////////////////////////////////////////////////////////////////////////////////
** Child_age = 12-23 months old
gen months = b19
keep if b5 == 1 & months >= 12 & months <=23
gen child_age = months
replace child_age = 1 if b5 == 1 & months >= 12 & months <=13
replace child_age = 2 if b5 == 1 & months >= 14 & months <=15
replace child_age = 3 if b5 == 1 & months >= 16 & months <=17
replace child_age = 4 if b5 == 1 & months >= 18 & months <=19
replace child_age = 5 if b5 == 1 & months >= 20 & months <=21
replace child_age = 6 if b5 == 1 & months >= 22 & months <=23
label define child_age 1"12-13" 2"14-15" 3"16-17" 4"18-19" 5"20-21" 6"22-23"
label var child_age "Child age in months"
label val child_age child_age
svy: tab months, count format(%4.0f) miss
svy: tab child_age, count format(%4.0f) miss
** Recode of vaccination variables
gen BCG = inrange(h2,1,3)
gen Polio0 = inrange(h0,1,3)
gen DPT = inrange(h3,1,3)+inrange(h5,1,3)+inrange(h7,1,3)
gen Polio = inrange(h4,1,3)+inrange(h6,1,3)+inrange(h8,1,3)
**gen pv = inrange(pv1,1,3)+inrange(pv2,1,3)+inrange(pv3,1,3)
gen ms = inrange(h9,1,3)
********************************************************************************
forvalues x = 1/3 {
gen Polio`x' = (Polio>=`x')
gen DPT`x' = (DPT>=`x')
/*gen Penta`c' = (pv>=`x')*/
}
**
** ========================================================================== **
** DEPENDENT VARIABLE
gen vaccination = (BCG==1 & Polio==3 & DPT==3 & ms==1)
label var vaccination "Received all vaccinations"
label define vaccination 0"No" 1"Yes"
label values vaccination vaccination
/*
recode h1 (1=1 "Has card") (else=0 " No card"), gen(vaccine_card)
label var vaccine_card "Vaccination card seen"
label values vaccine_card vaccine_card
*/
** ========================================================================== **
* Mother's age at birth
cap drop agebirth
gen agebirth=(b3-v011)/12
*tab agebirth
cap drop age_at_birth
recode agebirth (min/19.91667=1 "<20") (20/34.91667=2 "20-34") ///
(35/max=3 "35-49"), gen(age_at_birth)
label var age_at_birth "Mother's age at birth"
label val age_at_birth age_at_birth
*****************************************
* Birth order
gen birth_order1 = bord
replace birth_order1 = bord-1 if b0 == 2
replace birth_order1 = bord-2 if b0 == 3
recode birth_order1 (1=1 "1") (2/3=2 "2-3") (4/5=3 "4-5") ///
(6/20=4 "6+"), gen(birth_order)
label var birth_order "Birth order"
label values birth_order birth_order
*==============================================================================*
** DROP IF NOT WITHIN SAMPLE
keep if vaccination !=.
*==============================================================================*
** CHECK
svy: tab vaccination, count percent format(%4.1f) col
svy: tab vaccination, count format(%4.0f)
svy: tab vaccination, percent format(%4.1f)
********************************************************************************
********************************************************************************
** Table 10.3 Vaccinations by background characteristics **
svy: tab b4 vaccination, count format(%4.0f) miss
svy: tab birth_order vaccination, count format(%4.0f) miss
svy: tab residence vaccination, count format(%4.0f) miss
svy: tab region vaccination, count format(%4.0f) miss
svy: tab education vaccination, count format(%4.0f) miss
svy: tab wealth vaccination, count format(%4.0f) miss
*******************
svy: tab b4 vaccination, percent format(%4.1f) row miss
svy: tab birth_order vaccination, percent format(%4.1f) row miss
svy: tab residence vaccination, percent format(%4.1f) row miss
svy: tab region vaccination, percent format(%4.1f) row miss
svy: tab education vaccination, percent format(%4.1f) row miss
svy: tab wealth vaccination, percent format(%4.1f) row miss
********************************************************************************
exit
tabstat months [aw=weight], by(b4) stat(mean median sd min max) format(%4.1f) long
tabstat months [aw=weight], by(vaccination) stat(mean median sd min max) format(%4.1f) long
|
|
|
Goto Forum:
Current Time: Sun Dec 22 17:32:12 Coordinated Universal Time 2024
|