*Among breastfed & Non-breastfed
*3+ food groups for breastfed children & 4+ groups nonbreastfed
egen foodsum = rsum(group1 group2 group3 group4 group5 group6 group7 group8)
recode foodsum (1/2 .=0 "No") (3/8=1 "Yes"), gen(mdd3)
recode foodsum (1/3 .=0 "No") (4/8=1 "Yes"), gen(mdd4)
replace mdd3=. if age<6
replace mdd4=. if age<6
label values mdd3 yesno
label var mdd3 "Child with minimum dietary diversity, 3 out of 8 food groups- last-born 6-23 months"
label values mdd4 yesno
label var mdd4 "Child with minimum dietary diversity, 4 out of 8 food groups- last-born 6-23 months"
2. I made a small edit for how to count mmf among non-breastfeeding infants and deleted some of your code//Min meal frequency
*Minimum times or more (at least twice a day for breastfed infants 6-8 months and at least three times a day for breastfed children 9-23 months)
gen feedings=milkf
replace feedings= feedings + m39 if m39>0 & m39<8
gen mmf = (m4==95 & inrange(m39,2,7) & inrange(age,6,8)) | (m4==95 & inrange(m39,3,7) & inrange(age,9,23)) | (m4!=95 & inrange(m39,4,7) & inrange(age,6,23))
replace mmf=. if age<6
label values mmf yesno
label var mmf "Child with minimum meal frequency- last-born 6-23 months"
3. Your code for milk and milk products for non-breastfed children was not correct and you should use the following:gen milkf = 0
replace milkf=milkf + v411 if v411==1
replace milkf=milkf + v411a if v411a==1
replace milkf=milkf + v414p if v414p==1
gen fed_milk= ( milkf>=2 | m4==95|milk_milkp) if inrange(age,6,23)
label values fed_milk yesno
label var fed_milk "Child given breastmilk or milk products"