-
Notifications
You must be signed in to change notification settings - Fork 1
/
02_child_datacleaning.do
1734 lines (1425 loc) · 76.6 KB
/
02_child_datacleaning.do
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PROJECT: CPI - CHDN Nutrition Security Report
PURPOSE: IYCF and Health Data Cleaning
AUTHOR: Nicholus
CREATED: 02 Dec 2019
MODIFIED:
THINGS TO DO:
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*------------------------------------------------------------------------------*
*** DATA CLEANING ***
*------------------------------------------------------------------------------*
** use child non anthro dataset **
use "$dta/child_nonanthro_combined.dta", clear
** CHILD AGE CALCULATION **
* Child age calculation in months
*tab starttime, m
split starttime, p("T")
gen start_date = date(starttime1, "YMD")
format start_date %td
lab var start_date "Survey Date"
order start_date, after(starttime)
drop starttime1 starttime2
gen child_dob = date(hh_mem_dob, "DMY")
format child_dob %td
lab var child_dob "Child Date of Birth"
order child_dob, after(hh_mem_dob)
destring hh_mem_certification hh_mem_age_month, replace
gen child_age = hh_mem_age_month
gen child_age_dob = round((start_date - child_dob)/30.44,0.1)
tab child_age_dob
gen cage_check = round(child_age - child_age_dob,0.1)
list child_age child_age_dob if cage_check != 0 & !mi(cage_check)
*br starttime start_date child_dob cage_check child_age_dob child_age child_dobsrc if cage_check<=-1 | cage_check>=1
* Construct Valid Child Age (months)
* (replace with mom reponse on child age months in case of poor validity reference doc)
gen child_valid_age = child_age
replace child_valid_age = child_age_dob if hh_mem_certification == 1 | hh_mem_certification == 2 //birth certificate or health card
lab var child_valid_age "Child age in months - valid"
tab child_valid_age
drop child_age_dob cage_check
* Child Age Group Construction
foreach var of varlist child_valid_age {
* 1) 0 to 5 months
gen child_agegroup_1 = (`var'<6) if !missing(`var')
lab var child_agegroup_1 "Child aged 0 to 5 months"
rename child_agegroup_1 child_age_05
* 2) 6 to 8 months
gen child_agegroup_2 = (`var'>=6 & `var'<9) if !missing(`var')
lab var child_agegroup_2 "Child aged 6 to 8 months"
rename child_agegroup_2 child_age_68
* 3) 6 to 9 months
gen child_agegroup_3 = (`var'>=6 & `var'<10) if !missing(`var')
lab var child_agegroup_3 "Child aged 6 to 9 months"
rename child_agegroup_3 child_age_69
* 4) 6 to 11 months
gen child_agegroup_4 = (`var'>=6 & `var'<12) if !missing(`var')
lab var child_agegroup_4 "Child aged 6 to 11 months"
rename child_agegroup_4 child_age_611
* 5) 6 to 23 months
gen child_agegroup_5 = (`var'>=6 & `var'<24) if !missing(`var')
lab var child_agegroup_5 "Child aged 6 to 23 months"
rename child_agegroup_5 child_age_623
* 6) 9 to 23 months
gen child_agegroup_6 = (`var'>=9 & `var'<24) if !missing(`var')
lab var child_agegroup_6 "Child aged 9 to 23 months"
rename child_agegroup_6 child_age_923
* 7) 12 to 15 months
gen child_agegroup_7 = (`var'>=12 & `var'<16) if !missing(`var')
lab var child_agegroup_7 "Child aged 12 to 15 months"
rename child_agegroup_7 child_age_1215
* 8) 12 to 17 months
gen child_agegroup_8 = (`var'>=12 & `var'<18) if !missing(`var')
lab var child_agegroup_8 "Child aged 12 to 17 months"
rename child_agegroup_8 child_age_1217
* 9) 18 to 23 months
gen child_agegroup_9 = (`var'>=18 & `var'<24) if !missing(`var')
lab var child_agegroup_9 "Child aged 18 to 23 months"
rename child_agegroup_9 child_age_1823
* 10) 20 to 23 months
gen child_agegroup_10 = (`var'>=20 & `var'<24) if !missing(`var')
lab var child_agegroup_10 "Child aged 20 to 23 months"
rename child_agegroup_10 child_age_2023
* 11) 12 to 23 months (SCI)
gen child_agegroup_11 = (`var'>=12 & `var'<24) if !missing(`var')
lab var child_agegroup_11 "Child aged 12 to 23 months"
rename child_agegroup_11 child_age_1223
* 12) 24 to 29 months (current age of children addressed by intervention)
gen child_agegroup_12 = (`var'>=24 & `var'<29) if !missing(`var')
lab var child_agegroup_12 "Child aged 24 to 29 months"
rename child_agegroup_12 child_age_2429
* 13) 24 to 36 months (larger group of children addressed by intervention)
gen child_agegroup_13 = (`var'>=24 & `var'<36) if !missing(`var')
lab var child_agegroup_13 "Child aged 24 to 36 months"
rename child_agegroup_13 child_age_2436
* 14) 24 to 59 months
gen child_agegroup_15 = (`var'>=24 & `var'<60) if !missing(`var')
lab var child_agegroup_15 "Child aged 24 to 59 months"
rename child_agegroup_15 child_age_2459
}
order child_age_* , after(child_age)
********************************************************************************
********************************************************************************
*------------------------------------------------------------------------------*
*** INFANT AND YOUND CHILD FEEDING ***
*------------------------------------------------------------------------------*
destring hh_mem_present hh_mem_age, replace
replace hh_mem_present = .m if child_valid_age >= 60
tab hh_mem_present, m
tab hh_mem_age, m
* ---------------------------------------------------------------------------- *
* REPORTING INDICATORS
* ---------------------------------------------------------------------------- *
//B. BREASTFEEDING INFORMATION
// child_bf
destring child_bf, replace
replace child_bf = .d if child_bf == 999
replace child_bf = .m if hh_mem_present == 0
replace child_bf = .m if hh_mem_age >= 2
replace child_bf = .m if child_valid_age >= 24
tab child_bf, m
//B.1. Early Initiation of Breastfeeding
// child_eibf
destring child_eibf, replace
replace child_eibf = .d if child_eibf == 999
replace child_eibf = .m if child_bf != 1
tab child_eibf, m
gen child_breastfeed_eibf = (child_eibf == 0 & child_valid_age < 24)
replace child_breastfeed_eibf = .m if mi(child_eibf) | mi(child_valid_age)
lab val child_breastfeed_eibf yesno
lab var child_breastfeed_eibf "Received early initiation of breastfeeding 0-23 months"
tab child_breastfeed_eibf, m
//B.2. Exclusive Breastfeeding under 6 months
* ~~~
* Indicator definition:
* Proportion of infants 0 to 5 months of age who are fed exclusively with breast milk.
* Infants 0 to 5 months of age who received only breast milk during the previous day
* if one obs missed information, that obs can't be included in analysis (according to def).
* ~~~
// child_bfyest
destring child_bfyest, replace
replace child_bfyest = .d if child_bfyest == 999
replace child_bfyest = .m if hh_mem_present == 0
replace child_bfyest = .m if hh_mem_age >= 2
replace child_bfyest = .m if child_valid_age >= 24
tab child_bfyest, m
* fluids
local liquid child_vitdrop child_ors child_water child_juice child_broth child_porridge child_bms child_milk child_mproduct child_liquid
foreach var of varlist `liquid' {
destring `var', replace
replace `var' = .d if `var' == 999
replace `var' = .n if `var' == 777
replace `var' = .m if hh_mem_present == 0
replace `var' = .m if hh_mem_age >= 2
replace `var' = .m if child_valid_age >= 24
tab `var', m
}
egen child_liquid_consum = rowtotal(`liquid'), missing
replace child_liquid_consum = .n if mi(child_vitdrop) | mi(child_ors) | mi(child_water) | mi(child_juice) | ///
mi(child_broth) | mi(child_porridge) | mi(child_bms) | mi(child_milk) | ///
mi(child_mproduct) | mi(child_liquid)
lab var child_liquid_consum "Child Liquid Fluid Consumption Score - exclude Vitamin/medicine"
tab child_liquid_consum, m
* solids
local solid child_rice child_potatoes child_pumpkin child_beans child_leafyveg child_mango child_fruit child_organ child_beef child_fish child_insects child_eggs child_yogurt child_fat child_plam child_sweets child_condiments
// child_othfood, need some data cleaning
foreach var of varlist `solid' {
destring `var', replace
replace `var' = .d if `var' == 999
replace `var' = .n if `var' == 777
replace `var' = .m if hh_mem_present == 0
replace `var' = .m if hh_mem_age >= 2
replace `var' = .m if child_valid_age >= 24
tab `var', m
}
egen child_solid_consume = rowtotal(`solid'), missing
replace child_solid_consume = .n if mi(child_rice) | mi(child_potatoes) | mi(child_pumpkin) | ///
mi(child_beans) | mi(child_leafyveg) | mi(child_mango) | mi(child_fruit) | ///
mi(child_organ) | mi(child_beef) | mi(child_fish) | mi(child_insects) | ///
mi(child_eggs) | mi(child_yogurt) | mi(child_fat) | mi(child_plam) | ///
mi(child_sweets) | mi(child_condiments)
lab var child_solid_consume "Child Solid Food Consumption Score - exclude Vitamin/medicine"
tab child_solid_consume, m
* exclusive breastfeeding <6m
destring child_bfyest, replace
gen child_breastfeed_ebf = (child_age_05 == 1 & child_bfyest == 1 & child_liquid_consum == 0 & child_solid_consume == 0)
replace child_breastfeed_ebf = .m if mi(child_valid_age) | mi(child_liquid_consum) | mi(child_solid_consume) | mi(child_bfyest) | child_age_05 != 1
lab val child_breastfeed_ebf yesno
lab var child_breastfeed_ebf "Received exclusive breastfeeding 0-5 months"
tab child_breastfeed_ebf, m
//B.3. Predominant Breastfeeding 0-6 months
* ~~~
* Indicator definition:
* Proportion of infants 0 to 5 months of age who are predominantly breastfed.
* Infants 0 to 5 months of age who received breast milk as
* the predominant source of nourishment during the previous day.
* Predominant breastfeeding allows ORS, vitamin and/or mineral supplements,
* ritual fluids, water and water-based drinks, and fruit juice. Other liquids,
* including non-human milks and food-based fluids, are not allowed, and no semi-solid or solid foods are allowed.
* ~~~
* fluids
local liquid2 child_vitdrop child_ors child_juice child_broth child_porridge child_bms child_milk child_mproduct child_liquid
egen child_liquid_consum_2 = rowtotal(`liquid2'), missing
replace child_liquid_consum_2 = .n if mi(child_vitdrop) | mi(child_ors) | mi(child_juice) | ///
mi(child_broth) | mi(child_porridge) | mi(child_bms) | mi(child_milk) | ///
mi(child_mproduct) | mi(child_liquid)
lab var child_liquid_consum_2 "Child Liquid Fluid Consumption Score - exclude Water and Vitamin/medicine"
tab child_liquid_consum_2, m
* predominant breastfeeding <6m
gen child_breastfeed_predobf = (child_age_05 == 1 & child_bfyest == 1 & child_liquid_consum_2 == 0 & child_solid_consume == 0)
replace child_breastfeed_predobf = .m if mi(child_valid_age) | mi(child_liquid_consum_2) | mi(child_solid_consume) | mi(child_bfyest) | child_age_05 != 1
lab val child_breastfeed_predobf yesno
lab var child_breastfeed_predobf "Received predominant breastfeeding 0-5 months"
tab child_breastfeed_predobf, m
//B.4. Timely Complementary Feeding 6-9 months
* ~~~
* Indicator definition:
* Proportion of infants 6-9 months who received breastmilk and a solid or semi-solid
* food (based on 24-hour dietary recall). Solid and semi-solid foods are defined as mushy or solid foods, not fluids.
* ~~~
* timely complementary food intake
gen childdiet_timely_cf = (child_age_69 == 1 & child_bfyest == 1 & child_solid_consume != 0)
replace childdiet_timely_cf = .m if child_age_69 != 1 | mi(child_bfyest) | mi(child_valid_age)
lab val childdiet_timely_cf yesno
lab var childdiet_timely_cf "Received timely complementary feeding 6-9 months"
tab childdiet_timely_cf, m
//B.5. Introduction of Solid, semi-solid or soft foods 6-8 months
* ~~~
* Indicator definition:
* Proportion of infants 6 to 8 months of age who receive solid, semi-solid or soft foods.
* Infants 6 to 8 months of age who received solid, semi-solid or soft foods during the previous day.
* ~~~
* solids/semi-solids/soft
gen childdiet_introfood = (child_age_68 == 1 & child_solid_consume != 0)
replace childdiet_introfood = .m if child_age_68 != 1 | mi(child_solid_consume) | mi(child_valid_age)
lab val childdiet_introfood yesno
lab var childdiet_introfood "Introduced semi-solid food at 6-8 months"
tab childdiet_introfood, m
//B.6. Continued breastfeeding at 1 year – 12-15 months
* ~~~
* Indicator definition:
* Proportion of children 12 to 15 months of age who are fed with breast milk.
* Children 12 to 15 months of age who received breast milk during the previous day
* ~~~
gen child_breastfeed_cont_1yr = (child_age_1215 == 1 & child_bfyest == 1)
replace child_breastfeed_cont_1yr = .m if child_age_1215 != 1 | mi(child_bfyest)
lab val child_breastfeed_cont_1yr yesno
lab var child_breastfeed_cont_1yr "Received breastfeeding at one year 12-15 months"
tab child_breastfeed_cont_1yr, m
//B.7. Continued breastfeeding at ~2 years – 20-23 months
* ~~~
* Indicator definition:
* Proportion of children 20 to 23 months of age who are fed with breast milk.
* Children 20 to 23 months of age who received breast milk during the previous day
* ~~~
gen child_breastfeed_cont_2yr = (child_age_2023 == 1 & child_bfyest == 1)
replace child_breastfeed_cont_2yr = .m if child_age_2023 != 1 | mi(child_bfyest) | mi(child_valid_age)
lab val child_breastfeed_cont_2yr yesno
lab var child_breastfeed_cont_2yr "Received breastfeeding at two years 20-23 months"
tab child_breastfeed_cont_2yr, m
order child_breastfeed_eibf child_liquid_consum child_solid_consume child_breastfeed_ebf child_liquid_consum_2 child_breastfeed_predobf childdiet_timely_cf ///
childdiet_introfood child_breastfeed_cont_1yr child_breastfeed_cont_2yr, before(child_rice)
//C. MINIMUM DIETARY DIVERSITY, FREQUENCY, AND ACCEPTABLE DIET
//C.1. Minimum dietary diversity 6-23 months
* ~~~
* Indicator definition:
* Proportion of children 6 to 23 months of age who receive foods from 4 or more food groups.
* Children 6 to 23 months of age who received foods from >=4 food groups during the previous day
* ~~~
tab1 child_rice child_potatoes child_pumpkin child_beans child_leafyveg child_mango child_fruit child_organ child_beef child_fish child_insects child_eggs child_yogurt child_fat child_plam child_sweets child_condiments
* a. Grains
gen childdiet_fg_grains = (child_rice == 1 | child_potatoes == 1)
replace childdiet_fg_grains = .m if mi(child_rice) & mi(child_potatoes)
lab val childdiet_fg_grains yesno
lab var childdiet_fg_grains "Grain - child diet recall food group"
* b. Pulses
gen childdiet_fg_pulses = child_beans
lab val childdiet_fg_pulses yesno
lab var childdiet_fg_pulses "Pulses & Nut - child diet recall food group"
* c. Dairy
gen childdiet_fg_diary = child_yogurt
lab val childdiet_fg_diary yesno
lab var childdiet_fg_diary "Diary - child diet recall food group"
* d. Meat
gen childdiet_fg_meat = (child_organ == 1 | child_beef == 1 | child_fish == 1 | child_insects == 1)
replace childdiet_fg_meat = .m if mi(child_organ) & mi(child_beef) & mi(child_fish) & mi(child_insects)
lab val childdiet_fg_meat yesno
lab var childdiet_fg_meat "Meat & Fishes - child diet recall food group"
* e. Eggs
gen childdiet_fg_eggs = child_eggs
lab val childdiet_fg_eggs yesno
lab var childdiet_fg_eggs "Eggs - child diet recall food group"
* f. Vitamin vegetables
gen childdiet_fg_vit_vegfruit = (child_pumpkin == 1 | child_leafyveg == 1 | child_mango == 1)
replace childdiet_fg_vit_vegfruit = .m if mi(child_pumpkin) | mi(child_leafyveg) | mi(child_mango)
lab val childdiet_fg_vit_vegfruit yesno
lab var childdiet_fg_vit_vegfruit "Vit riched Vegetable & Fruits - child diet recall food group"
* g. Other vegetables
gen childdiet_fg_vegfruit_oth = child_fruit
lab val childdiet_fg_vegfruit_oth yesno
lab var childdiet_fg_vegfruit_oth "Other Vegetable & Fruits - child diet recall food group"
sum childdiet_fg_grains-childdiet_fg_vegfruit_oth
* dietary diversity score
egen childdiet_dds = rowtotal(childdiet_fg_grains childdiet_fg_pulses childdiet_fg_diary childdiet_fg_meat childdiet_fg_eggs childdiet_fg_vit_vegfruit ///
childdiet_fg_vegfruit_oth), missing
replace childdiet_dds = .m if mi(childdiet_fg_grains) & mi(childdiet_fg_pulses) & mi(childdiet_fg_diary) & ///
mi(childdiet_fg_meat) & mi(childdiet_fg_eggs) & mi(childdiet_fg_vit_vegfruit) & ///
mi(childdiet_fg_vegfruit_oth)
replace childdiet_dds = . if mi(child_valid_age) | child_age_623 == 0
lab var childdiet_dds "Mean Child Dietary Diversity Score - 24 hours diet recall"
tab1 childdiet_dds child_valid_age, m
* reached minmimum dietary score: >=4 groups in past 24h
gen childdiet_min_dds = (childdiet_dds >= 4 & child_age_623 == 1)
replace childdiet_min_dds = .m if mi(childdiet_dds) | child_age_623 != 1
lab val childdiet_min_dds yesno
lab var childdiet_min_dds "Received Minimum Dietary Diversity Score 6-23 months"
tab childdiet_min_dds, m
//C.2. Minimum meal frequency
* ~~~
* Indicator definition:
* Proportion of breastfed and non-breastfed children 6ñ23 months of age
* who receive solid, semi-solid, or soft foods (but also including milk feeds for non-breastfed children) the minimum number of times or more.
* BF children: Breastfed children 6ñ23 months of age who received solid, semi-solid or soft foods
* the minimum number of times or more during the previous day
* Non BF children: Non-breastfed children 6ñ23 months of age who received solid, semi-solid or soft foods or
* milk feeds the minimum number of times or more during the previous day
* Minimum is defined as:
* 2 times for breastfed infants 6-8 months
* 3 times for breastfed children 9-23 months
* 4 times for non-breastfed children 6-23 months
* ~~~
// child_food_freq
destring child_food_freq, replace
replace child_food_freq = .d if child_food_freq == 999
replace child_food_freq = .m if hh_mem_present == 0
replace child_food_freq = .m if hh_mem_age >= 2
replace child_food_freq = .m if child_valid_age >= 24
tab child_food_freq, m
//a. Breastfeeding Children
//a.1. 6-8 months (min num of times for solids: 2)
gen childdiet_68_bf_minfreq = (child_age_68 == 1 & child_bfyest == 1 & child_food_freq >= 2)
replace childdiet_68_bf_minfreq = .m if child_bfyest != 1
replace childdiet_68_bf_minfreq = .m if mi(child_food_freq) | mi(child_bfyest) | child_age_68 != 1
lab val childdiet_68_bf_minfreq yesno
lab var childdiet_68_bf_minfreq "% Breastfeeding children with Minimum Meal Frequency 6-8 months"
tab childdiet_68_bf_minfreq, m
//a.2. 9-23 months (min num of times for solids: 3)
gen childdiet_923_bf_minfreq = (child_age_923 == 1 & child_bfyest == 1 & child_food_freq >= 3)
replace childdiet_923_bf_minfreq = .m if child_bfyest != 1
replace childdiet_923_bf_minfreq = .m if mi(child_food_freq) | mi(child_bfyest) | child_age_923 != 1
lab val childdiet_923_bf_minfreq yesno
lab var childdiet_923_bf_minfreq "% Breastfeeding children with Minimum Meal Frequency 9-23 months"
tab childdiet_923_bf_minfreq, m
//a.2. 6-23 months (min num of times for solids: 4)
gen childdiet_bf_minfreq = (childdiet_68_bf_minfreq == 1 | childdiet_923_bf_minfreq == 1)
replace childdiet_bf_minfreq = .m if child_bfyest != 1
replace childdiet_bf_minfreq = .m if mi(childdiet_923_bf_minfreq) & mi(childdiet_68_bf_minfreq)
lab val childdiet_bf_minfreq yesno
lab var childdiet_bf_minfreq "% Breastfeeding children with Minimum Meal Frequency 6-23 months"
tab childdiet_bf_minfreq, m
//b. Non-Breastfeeding Children
* formula & complementary feeding
local milkfreq child_bms child_milk child_mproduct //child_bms_freq child_milk_freq child_mproduct_freq
foreach x in `milkfreq' {
destring `x'_freq, replace
replace `x'_freq = .d if `x'_freq == 999
replace `x'_freq = .n if `x'_freq == 777
replace `x'_freq = .m if `x' != 1
replace `x'_freq = .m if hh_mem_present == 0
replace `x'_freq = .m if hh_mem_age >= 2
replace `x'_freq = .m if child_valid_age >= 24
tab `x', m
}
egen childdiet_formulacf_num = rowtotal(child_food_freq child_bms_freq child_milk_freq child_mproduct_freq), missing
replace childdiet_formulacf_num = .m if mi(child_food_freq) & mi(child_bms_freq) & mi(child_milk_freq) & mi(child_mproduct_freq)
lab var childdiet_formulacf_num "% Formula feeding and complementary feeding times for non-breastfeeding children"
tab childdiet_formulacf_num, m
gen childdiet_nobf_minfreq = (child_age_623 == 1 & child_bfyest == 0 & childdiet_formulacf_num >= 4)
replace childdiet_nobf_minfreq = .m if child_bfyest != 0
replace childdiet_nobf_minfreq = .m if mi(childdiet_formulacf_num) | mi(child_bfyest) | child_age_623 != 1
lab val childdiet_nobf_minfreq yesno
lab var childdiet_nobf_minfreq "% Non-breastfeeding children received Minimum Meal Frequency 6-23 months"
tab childdiet_nobf_minfreq, m
//c. Both Breastfeed or Non-Breastfeed Children 6-23 months
gen childdiet_min_mealfreq = (childdiet_bf_minfreq==1 | childdiet_nobf_minfreq==1)
replace childdiet_min_mealfreq = .m if mi(childdiet_bf_minfreq) & mi(childdiet_nobf_minfreq)
lab val childdiet_min_mealfreq yesno
lab var childdiet_min_mealfreq "% Children received Minimum Meal Frequency 6-23 months"
tab childdiet_min_mealfreq, m
//C.3. Minimum acceptable diet
* ~~~
* Indicator definition:
* Proportion of children 6 to 23 months of age who receive a minimum acceptable diet (apart from breast milk).
* Breastfed children 6 to 23 months of age who had at least the minimum dietary diversity and the minimum meal frequency during the previous day
* Non-breastfed children 6 to 23 months of age who received at least 2 milk feedings and had at least the minimum dietary diversity not including milk feeds and
* the minimum meal frequency during the previous day
* It is recommended that the indicator be further disaggregated and reported for the following age groups:
* 6-11 months, 12-17 months and 18-23 months of age, if sample size permits.
* ~~~
//a. Breastfeeding Children
* minimum acceptable dietary score
gen childdiet_bf_min_acceptdiet = (child_bfyest == 1 & childdiet_min_dds == 1 & childdiet_bf_minfreq == 1)
replace childdiet_bf_min_acceptdiet = .m if child_bfyest != 1 | mi(childdiet_min_dds) | mi(childdiet_bf_minfreq)
lab val childdiet_bf_min_acceptdiet yesno
lab var childdiet_bf_min_acceptdiet "% Breastfeeding children with Minimum Acceptable Diet 6-23 months"
tab childdiet_bf_min_acceptdiet,m
//b. Non-Breastfeeding Children
egen childdiet_nomilk_dds = rowtotal(childdiet_fg_grains childdiet_fg_pulses childdiet_fg_meat childdiet_fg_eggs ///
childdiet_fg_vit_vegfruit childdiet_fg_vegfruit_oth), missing
replace childdiet_nomilk_dds= .m if mi(childdiet_fg_grains) & mi(childdiet_fg_pulses) & mi(childdiet_fg_diary) & ///
mi(childdiet_fg_meat) & mi(childdiet_fg_eggs) & mi(childdiet_fg_vit_vegfruit) & mi(childdiet_fg_vegfruit_oth)
lab var childdiet_nomilk_dds "Child Non-milk Dietary Diversity Score - 24 hours diet recall"
tab childdiet_nomilk_dds, m
* milk feedings
egen childdiet_formula_num = rowtotal(child_food_freq child_bms_freq child_milk_freq child_mproduct_freq child_yogurt), missing
replace childdiet_formula_num = .m if mi(child_food_freq) & mi(child_bms_freq) & mi(child_milk_freq) & mi(child_mproduct_freq) & mi(child_yogurt)
lab var childdiet_formula_num "% of formula or milk-only feeding times for non-breastfeeding children"
tab childdiet_formula_num, m
* minimum acceptable dietary score
gen childdiet_nobf_min_acceptdiet = (child_bfyest == 0 & childdiet_formulacf_num >= 4 & childdiet_formula_num >= 2 & childdiet_nomilk_dds >= 4)
replace childdiet_nobf_min_acceptdiet = .m if child_bfyest != 0 | mi(childdiet_formulacf_num) | mi(childdiet_formula_num) | mi(childdiet_nomilk_dds)
lab val childdiet_nobf_min_acceptdiet yesno
lab var childdiet_nobf_min_acceptdiet "% Non-breastfeeding children with Minimum Acceptable Diet 6-23 months"
tab childdiet_nobf_min_acceptdiet, m
//c. Both Breastfeed and Non-Breastfeed Children 6-23 months
* minimum acceptable diet
gen childdiet_min_acceptdiet = (child_age_623 == 1 & childdiet_bf_min_acceptdiet == 1 | childdiet_nobf_min_acceptdiet == 1)
replace childdiet_min_acceptdiet= .m if mi(childdiet_bf_min_acceptdiet) & mi(childdiet_nobf_min_acceptdiet)
replace childdiet_min_acceptdiet= .m if child_age_623 != 1
lab val childdiet_min_acceptdiet yesno
lab var childdiet_min_acceptdiet "% Children with Minimum Acceptable Diet 6-23 months"
tab childdiet_min_acceptdiet, m
* 6-11 months
gen childdiet_611_min_acceptdiet = (childdiet_min_acceptdiet == 1 & child_age_611 == 1)
replace childdiet_611_min_acceptdiet= .m if mi(childdiet_min_acceptdiet) | child_age_611 != 1
lab val childdiet_611_min_acceptdiet yesno
lab var childdiet_611_min_acceptdiet "% Children received Minimum Acceptable Diet 6-11 months"
tab childdiet_611_min_acceptdiet, m
* 12-17 months
gen childdiet_1217_min_acceptdiet = (childdiet_min_acceptdiet == 1 & child_age_1217 == 1)
replace childdiet_1217_min_acceptdiet = .m if mi(childdiet_min_acceptdiet) | child_age_1217 != 1
lab val childdiet_1217_min_acceptdiet yesno
lab var childdiet_1217_min_acceptdiet "% Children received Minimum Acceptable Diet 12-17 months"
tab childdiet_1217_min_acceptdiet, m
* 18-23 months
gen childdiet_1823_min_acceptdiet = (childdiet_min_acceptdiet == 1 & child_age_1823 == 1)
replace childdiet_1823_min_acceptdiet = .m if mi(childdiet_min_acceptdiet) | child_age_1823 != 1
lab val childdiet_1823_min_acceptdiet yesno
lab var childdiet_1823_min_acceptdiet "% Children received Minimum Acceptable Diet 18-23 months"
tab childdiet_1823_min_acceptdiet, m
//C.4. Consumption of iron-rich or iron-fortified foods
* ~~~
* Indicator definition:
* Proportion of children 6ñ23 months of age who receive an iron-rich food or
* iron-fortified food that is specially designed for infants and young children, or that is fortified in the home.
* Children 6ñ23 months of age who received an iron-rich food
* or a food that was specially designed for infants and young children and was fortified with iron,
* or a food that was fortified in the home with a product that included iron during the previous day
* ~~~
* food: meat
gen childdiet_iron_consum = (childdiet_fg_meat == 1 & child_age_623 == 1)
replace childdiet_iron_consum = .m if mi(childdiet_fg_meat) | child_age_623 != 1
lab val childdiet_iron_consum yesno
lab var childdiet_iron_consum "% Children received iron riched food 6-23 months"
tab childdiet_iron_consum, m
order childdiet_fg_grains - childdiet_iron_consum, after (child_food_freq)
*** Reporting Variables ***
lab var child_bf "breastfeed child"
lab var child_breastfeed_eibf "early initiaton of breastfeedig"
lab var child_breastfeed_ebf "exclusive breastfeeding"
lab var child_breastfeed_predobf "predominant breastfeeding"
lab var childdiet_timely_cf "timely initiation of complementary feeding"
lab var childdiet_introfood "introduction of semi-solid food"
lab var child_breastfeed_cont_1yr "continious breastfeeding at 1 year"
lab var child_breastfeed_cont_2yr "continious breastfeeding at 2 years"
lab var childdiet_fg_grains "child diet - grains"
lab var childdiet_fg_pulses "child diet - pulses"
lab var childdiet_fg_diary "child diet - diary"
lab var childdiet_fg_meat "child diet - meat"
lab var childdiet_fg_eggs "child diet - eggs"
lab var childdiet_fg_vit_vegfruit "child diet - vitamin rich fruirt & vegetable"
lab var childdiet_fg_vegfruit_oth "child diet - other fruit & vegetable"
lab var childdiet_dds "child dietary diversity score"
lab var childdiet_min_dds "child met minimum dietary diversity"
lab var childdiet_min_mealfreq "child met minimum meal frequency"
lab var childdiet_bf_minfreq "breastfeed child meet minimum meal frequency"
lab var childdiet_68_bf_minfreq "6-8 months breastfeed child meet minimum meal frequency"
lab var childdiet_923_bf_minfreq "9-23 months breastfeed child meet minimum meal frequency"
lab var childdiet_nobf_minfreq "non breastfeed child meet minimum meal frequency"
lab var childdiet_min_acceptdiet "child met minimum acceptable diet"
lab var childdiet_bf_min_acceptdiet "breastfeed child met minimum acceptable diet"
lab var childdiet_nobf_min_acceptdiet "non breastfeed child met minimum acceptable diet"
lab var childdiet_611_min_acceptdiet "6-11 months child met minimum acceptable diet"
lab var childdiet_1217_min_acceptdiet "12-27 months child met minimum acceptable diet"
lab var childdiet_1823_min_acceptdiet "18-23 months child met minimum acceptable diet"
lab var childdiet_iron_consum "child consumption of iron rich foods"
order child_bf child_breastfeed_eibf child_breastfeed_ebf child_breastfeed_predobf childdiet_timely_cf childdiet_introfood child_breastfeed_cont_1yr child_breastfeed_cont_2yr ///
childdiet_fg_grains childdiet_fg_pulses childdiet_fg_diary childdiet_fg_meat childdiet_fg_eggs childdiet_fg_vit_vegfruit childdiet_fg_vegfruit_oth childdiet_dds childdiet_min_dds ///
childdiet_min_mealfreq childdiet_bf_minfreq childdiet_68_bf_minfreq childdiet_923_bf_minfreq childdiet_nobf_minfreq ///
childdiet_min_acceptdiet childdiet_bf_min_acceptdiet childdiet_nobf_min_acceptdiet childdiet_611_min_acceptdiet childdiet_1217_min_acceptdiet childdiet_1823_min_acceptdiet ///
childdiet_iron_consum, before(child_vaccin)
global iycf child_bf child_breastfeed_eibf child_breastfeed_ebf child_breastfeed_predobf childdiet_timely_cf childdiet_introfood child_breastfeed_cont_1yr child_breastfeed_cont_2yr ///
childdiet_fg_grains childdiet_fg_pulses childdiet_fg_diary childdiet_fg_meat childdiet_fg_eggs childdiet_fg_vit_vegfruit childdiet_fg_vegfruit_oth childdiet_dds childdiet_min_dds ///
childdiet_min_mealfreq childdiet_bf_minfreq childdiet_68_bf_minfreq childdiet_923_bf_minfreq childdiet_nobf_minfreq ///
childdiet_min_acceptdiet childdiet_bf_min_acceptdiet childdiet_nobf_min_acceptdiet childdiet_611_min_acceptdiet childdiet_1217_min_acceptdiet childdiet_1823_min_acceptdiet ///
childdiet_iron_consum
*------------------------------------------------------------------------------*
*** HEALTH SEEKING BEHAVIOURS ***
*------------------------------------------------------------------------------*
* -------------------------------------------------------------------- *
** CHILD HEALTH-SEEKING BEHAVIOUR: IMMUNIZATION RECORD **
* -------------------------------------------------------------------- *
// child_vaccin
destring child_vaccin, replace
replace child_vaccin = .m if hh_mem_present == 0
replace child_vaccin = .m if hh_mem_age >= 2
replace child_vaccin = .m if child_valid_age >= 24
tab child_vaccin, m
// child_vaccin_card
destring child_vaccin_card, replace
replace child_vaccin_card = .m if child_vaccin == 0
replace child_vaccin_card = .m if hh_mem_present == 0
replace child_vaccin_card = .m if hh_mem_age >= 2
replace child_vaccin_card = .m if child_valid_age >= 24
tab child_vaccin_card, m
// with card
local vc child_vc_bcg child_vc_hepb child_vc_penta1 child_vc_penta2 child_vc_penta3 ///
child_vc_polio1 child_vc_polioinj child_vc_polio2 child_vc_polio3 ///
child_vc_measel1 child_vc_measel2 child_vc_rubella child_vc_encephalitis
foreach var in `vc' {
destring `var', replace
replace `var' = .m if mi(child_vaccin_card)
replace `var' = .m if child_vaccin_card == 0
replace `var' = .m if hh_mem_present == 0
replace `var' = .m if hh_mem_age >= 2
replace `var' = .m if child_valid_age >= 24
tab `var', m
}
// with no card
local nvc child_novc_bcg child_novc_penta child_novc_polio child_novc_polio_inj ///
child_novc_measel child_novc_rubella child_novc_encephalitis
foreach var in `nvc' {
destring `var', replace
replace `var' = .m if `var' == 999
replace `var' = .m if mi(child_vaccin_card)
replace `var' = .m if child_vaccin_card == 1
replace `var' = .m if hh_mem_present == 0
replace `var' = .m if hh_mem_age >= 2
replace `var' = .m if child_valid_age >= 24
tab `var', m
}
local nvcnum child_novc_penta child_novc_polio child_novc_measel
foreach x in `nvcnum' {
destring `x'_num, replace
replace `x'_num = .d if `x'_num == 999
replace `x'_num = .n if `x'_num == 777
replace `x'_num = .m if `x' != 1
replace `x'_num = .m if hh_mem_present == 0
replace `x'_num = .m if hh_mem_age >= 2
replace `x'_num = .m if child_valid_age >= 24
tab `x', m
}
// child_vita
destring child_vita, replace
replace child_vita = .d if child_vita == 999
replace child_vita = .n if child_vita == 777
replace child_vita = .m if hh_mem_present == 0
replace child_vita = .m if hh_mem_age >= 2
replace child_vita = .m if child_valid_age >= 24
tab child_vita, m
// child_deworm
destring child_deworm, replace
replace child_deworm = .d if child_deworm == 999
replace child_deworm = .n if child_deworm == 777
replace child_deworm = .m if hh_mem_present == 0
replace child_deworm = .m if hh_mem_age >= 2
replace child_deworm = .m if child_valid_age >= 24
tab child_deworm, m
// child_hepatitisb
destring child_hepatitisb, replace
replace child_hepatitisb = .d if child_hepatitisb == 999
replace child_hepatitisb = .n if child_hepatitisb == 777
replace child_hepatitisb = .m if hh_mem_present == 0
replace child_hepatitisb = .m if hh_mem_age >= 2
replace child_hepatitisb = .m if child_valid_age >= 24
tab child_hepatitisb, m
// child_birthwt
destring child_birthwt, replace
replace child_birthwt = .m if hh_mem_present == 0
replace child_birthwt = .m if hh_mem_age >= 2
replace child_birthwt = .m if child_valid_age >= 24
tab child_birthwt, m
// child_birthwt_unit
// child_birthwt_unit1 child_birthwt_unit2 child_birthwt_unit3
local wtunit child_birthwt_unit1 child_birthwt_unit2 child_birthwt_unit3
foreach var in `wtunit' {
destring `var', replace
replace `var' = .m if `var' == 999
replace `var' = .m if mi(child_birthwt)
replace `var' = .m if child_birthwt == 0
replace `var' = .m if hh_mem_present == 0
replace `var' = .m if hh_mem_age >= 2
replace `var' = .m if child_valid_age >= 24
tab `var', m
}
rename child_birthwt_unit1 child_birthwt_kgu
rename child_birthwt_unit2 child_birthwt_lbu
rename child_birthwt_unit3 child_birthwt_ozu
local bwt child_birthwt_kg child_birthwt_lb child_birthwt_oz
foreach x in `bwt' {
destring `x', replace
replace `x' = .d if `x' == 999
replace `x' = .n if `x' == 777
replace `x' = .m if `x'u != 1
replace `x' = .m if hh_mem_present == 0
replace `x' = .m if hh_mem_age >= 2
replace `x' = .m if child_valid_age >= 24
tab `x', m
}
// child_birthwt_doc
destring child_birthwt_doc, replace
replace child_birthwt_doc = .m if mi(child_birthwt)
replace child_birthwt_doc = .m if child_birthwt == 0
replace child_birthwt_doc = .m if hh_mem_present == 0
replace child_birthwt_doc = .m if hh_mem_age >= 2
replace child_birthwt_doc = .m if child_valid_age >= 24
tab child_birthwt_doc, m
* ---------------------------------------------------------------------------- *
* REPORTING INDICATORS
* ---------------------------------------------------------------------------- *
* ~~~
* Indicator definition:
* DHS Myanmar Report - page 183
* Percentage of children age 12-23 months who received specific vaccines at any time before the survey,
* by source of information (vaccination card or mother’s report),
* and percentage vaccinated by age 12 months, Myanmar DHS 2015-16
* For children whose information is based on the mother’s report, the proportion of vaccinations given
* during the first year of life is assumed to be the same as for children with a written record of vaccination.
* ~~~
// child_vaccin
// with 12 - 23 months age only
gen child_vaccin_rpt = child_vaccin
replace child_vaccin_rpt = .m if child_valid_age < 12
tab child_vaccin_rpt, m
//A. BCG
// either card or self-report
gen child_bcg_yes = (child_vc_bcg == 1 | child_novc_bcg == 1)
replace child_bcg_yes = .m if mi(child_vc_bcg) * mi(child_novc_bcg)
replace child_bcg_yes = .m if hh_mem_present == 0
replace child_bcg_yes = .m if hh_mem_age >= 2
replace child_bcg_yes = .m if child_valid_age >= 24
tab child_bcg_yes, m
gen child_novc_bcgd = child_novc_bcg
replace child_novc_bcgd = 0 if child_novc_bcg == 2
tab child_novc_bcgd, m
// with 12 - 23 months age only
local bcg child_vc_bcg child_novc_bcgd child_bcg_yes
foreach x in `bcg' {
gen `x'_rpt = `x'
replace `x'_rpt = .m if child_valid_age < 12
tab `x'_rpt, m
}
// child_novc_bcgd child_bcg_yes child_vc_bcg_rpt child_novc_bcg_rpt child_bcg_yes_rpt
//B. Hep B
tab child_hepatitisb, m
tab child_vc_hepb, m
//C. PENTA 5
// penta times without card
forvalue x = 1/3 {
gen child_novc_penta_`x' = child_novc_penta_num
replace child_novc_penta_`x' = 1 if child_novc_penta_num >= `x' & !mi(child_novc_penta_num)
replace child_novc_penta_`x' = 0 if child_novc_penta_num < `x' & !mi(child_novc_penta_num)
tab child_novc_penta_`x', m
}
// either card or self-report
forvalue x = 1/3 {
gen child_penta_yes_`x' = (child_vc_penta`x' == 1 | child_novc_penta_`x' == 1)
replace child_penta_yes_`x' = .m if mi(child_vc_penta`x') & mi(child_novc_penta_`x')
tab child_penta_yes_`x', m
}
// with 12 - 23 months age only
local penta child_vc_penta1 child_vc_penta2 child_vc_penta3 child_novc_penta_1 ///
child_novc_penta_2 child_novc_penta_3 child_penta_yes_1 child_penta_yes_2 child_penta_yes_3
foreach x in `penta' {
gen `x'_rpt = `x'
replace `x'_rpt = .m if child_valid_age < 12
tab `x'_rpt, m
}
// child_novc_penta_1 child_novc_penta_2 child_novc_penta_3 child_penta_yes_1 child_penta_yes_2 child_penta_yes_3 child_vc_penta1_rpt child_vc_penta2_rpt child_vc_penta3_rpt child_novc_penta_1_rpt child_novc_penta_2_rpt child_novc_penta_3_rpt child_penta_yes_1_rpt child_penta_yes_2_rpt child_penta_yes_3_rpt
//D. Polio
// polio times without card
forvalue x = 1/3 {
gen child_novc_polio_`x' = child_novc_polio_num
replace child_novc_polio_`x' = 1 if child_novc_polio_num >= `x' & !mi(child_novc_polio_num)
replace child_novc_polio_`x' = 0 if child_novc_polio_num < `x' & !mi(child_novc_polio_num)
tab child_novc_polio_`x', m
}
// either card or self-report
forvalue x = 1/3 {
gen child_polio_yes_`x' = (child_vc_polio`x' == 1 | child_novc_polio_`x' == 1)
replace child_polio_yes_`x' = .m if mi(child_vc_polio`x') & mi(child_novc_polio_`x')
tab child_polio_yes_`x', m
}
// polio injection either card or self-report
gen child_polioinj = (child_vc_polioinj == 1 | child_novc_polio_inj == 1)
replace child_polioinj = .m if mi(child_vc_polioinj) & mi(child_novc_polio_inj)
tab child_polioinj, m
// with 12 - 23 months age only
local polio child_vc_polio1 child_vc_polio2 child_vc_polio3 child_novc_polio_1 ///
child_novc_polio_2 child_novc_polio_3 child_polio_yes_1 ///
child_polio_yes_2 child_polio_yes_3 child_vc_polioinj child_novc_polio_inj
foreach x in `polio' {
gen `x'_rpt = `x'
replace `x'_rpt = .m if child_valid_age < 12
tab `x'_rpt, m
}
//child_novc_polio_1 child_novc_polio_2 child_novc_polio_3 child_polio_yes_1 child_polio_yes_2 child_polio_yes_3 child_vc_polio1_rpt child_vc_polio2_rpt child_vc_polio3_rpt child_novc_polio_1_rpt child_novc_polio_2_rpt child_novc_polio_3_rpt child_polio_yes_1_rpt child_polio_yes_2_rpt child_polio_yes_3_rpt
//E. Measles
// measles times without card
forvalue x = 1/2 {
gen child_novc_measel_`x' = child_novc_measel_num
replace child_novc_measel_`x' = 1 if child_novc_measel_num >= `x' & !mi(child_novc_measel_num)
replace child_novc_measel_`x' = 0 if child_novc_measel_num < `x' & !mi(child_novc_measel_num)
tab child_novc_measel_`x', m
}
// either card or self-report
forvalue x = 1/2 {
gen child_measel_yes_`x' = (child_vc_measel`x' == 1 | child_novc_measel_`x' == 1)
replace child_measel_yes_`x' = .m if mi(child_vc_measel`x') & mi(child_novc_measel_`x')
tab child_measel_yes_`x', m
}
// with 12 - 23 months age only
local measel child_vc_measel1 child_vc_measel2 child_novc_measel_1 ///
child_novc_measel_2 child_measel_yes_1 child_measel_yes_2
foreach x in `measel' {
gen `x'_rpt = `x'
replace `x'_rpt = .m if child_valid_age < 12
tab `x'_rpt, m
}
// child_novc_measel_1 child_novc_measel_2 child_measel_yes_1 child_measel_yes_2 child_vc_measel1_rpt child_vc_measel2_rpt child_novc_measel_1_rpt child_novc_measel_2_rpt child_measel_yes_1_rpt child_measel_yes_2_rpt
//F. Rubella
// either card or self-report
gen child_rubella_yes = (child_vc_rubella == 1 | child_novc_rubella == 1)
replace child_rubella_yes = .m if mi(child_vc_rubella) & mi(child_novc_rubella)
tab child_rubella_yes, m
// with 12 - 23 months age only
local rubella child_vc_rubella child_novc_rubella child_rubella_yes
foreach x in `rubella' {
gen `x'_rpt = `x'
replace `x'_rpt = .m if child_valid_age < 12
tab `x'_rpt, m
}
// child_rubella_yes child_vc_rubella_rpt child_novc_rubella_rpt child_rubella_yes_rpt
//G. COMPLETE ALL BASIC IMMUNIZATION
* BCG, first dose of measles, and three doses each of pentavalent and polio vaccine
gen complete_cv_rpt = (child_vc_bcg_rpt == 1 & child_vc_penta1_rpt == 1 & child_vc_penta2_rpt == 1 & ///
child_vc_penta3_rpt == 1 & child_vc_polio1_rpt == 1 & child_vc_polio2_rpt == 1 & ///
child_vc_polio3_rpt == 1 & child_vc_measel1_rpt == 1)
replace complete_cv = .m if mi(child_vc_bcg_rpt) | mi(child_vc_penta1_rpt) | mi(child_vc_penta2_rpt) | ///
mi(child_vc_penta3_rpt) | mi(child_vc_polio1_rpt) | mi(child_vc_polio2_rpt) | ///
mi(child_vc_polio3_rpt) | mi(child_vc_measel1_rpt)
tab complete_cv_rpt, m
gen noimmu_cv_rpt = (child_vc_bcg_rpt == 0 & child_vc_penta1_rpt == 0 & child_vc_penta2_rpt == 0 & ///
child_vc_penta3_rpt == 0 & child_vc_polio1_rpt == 0 & child_vc_polio2_rpt == 0 & ///
child_vc_polio3_rpt == 0 & child_vc_measel1_rpt == 0)
replace noimmu_cv_rpt = .m if mi(child_vc_bcg_rpt) | mi(child_vc_penta1_rpt) | mi(child_vc_penta2_rpt) | ///
mi(child_vc_penta3_rpt) | mi(child_vc_polio1_rpt) | mi(child_vc_polio2_rpt) | ///
mi(child_vc_polio3_rpt) | mi(child_vc_measel1_rpt)
tab noimmu_cv_rpt, m
// complete_cv_rpt noimmu_cv_rpt
//child_hepatitisb - immunization accessibility
//H. Low Birth Weight
* ~~~
* Indicator definition:
* Standard Birth Weight: More than 2.5kg (UNICEF)
* Babies are weighted within the first few hours after birth.
* A birthweight less than 2,500 g (5 pounds 8 ounces) is diagnosed as low birthweight.
* ~~~
* child birth weight calculation
gen child_birthwt_oz_cal = round(child_birthwt_oz/16, 0.1)
egen child_birthwt_lb_cal = rowtotal(child_birthwt_lb child_birthwt_oz_cal)
replace child_birthwt_lb_cal = .m if mi(child_birthwt_lb)
gen child_birth_weight = child_birthwt_kg
replace child_birth_weight = round(child_birthwt_lb_cal/2.2,0.1) if !mi(child_birthwt_lb_cal)
lab var child_birth_weight "Average Child Birth Weight in kg"
tab child_birth_weight, m
* low weight at birth: <2.5kg
gen child_low_birthweight = (child_birth_weight < 2.5)
replace child_low_birthweight = .m if mi(child_birth_weight)
lab var child_low_birthweight "Low Birth Weight children"
tab child_low_birthweight, m
* birth weight source
tab child_birthwt_doc, m
local bwt child_birth_weight child_low_birthweight
foreach var in `bwt' {
gen `var'_vc = `var'
replace `var'_vc = .m if child_birthwt_doc == 1
tab `var'_vc, m
gen `var'_novc = `var'
replace `var'_novc = .m if child_birthwt_doc == 0
tab `var'_novc, m
}
order child_bcg_yes - child_low_birthweight_novc, before(child_ill)
*** reporting variables ***
lab var child_vaccin_rpt "reported received at least one vacination"
lab var child_vc_bcg_rpt "immunized bcg with card"
lab var child_novc_bcgd_rpt "immunized bcg with no card"
lab var child_bcg_yes_rpt "immunized bcg"
lab var child_vc_penta1_rpt "immunized penta-1 with card"
lab var child_vc_penta2_rpt "immunized penta-2 with card"
lab var child_vc_penta3_rpt "immunized penta-3 with card"
lab var child_novc_penta_1_rpt "immunized penta-1 with no card"
lab var child_novc_penta_2_rpt "immunized penta-2 with no card"
lab var child_novc_penta_3_rpt "immunized penta-3 with no card"
lab var child_penta_yes_1_rpt "immunized penta-1"
lab var child_penta_yes_2_rpt "immunized penta-2"
lab var child_penta_yes_3_rpt "immunized penta-3"