Dear all,

I have three variables(idealFruitVeg ; idealfiber ; idealssbweek). Each variable can have either a value of 0 “Ideal” or 1 “Nonideal.”

I would like to get a count of how many observations fall into the “ideal” category for all three variables, how many observations are in the “ideal” category for only two out of three variables, how many observations are in the “ideal” category for only one of the three variables, and how many observations are not in the “ideal” category for any of the variables.

I pasted the syntax for how I accomplished this in Stata, but I am assuming there is a more efficient way to do this because the syntax would be rather long if I was trying to do this with a large number of variables. I am new to Stata and am trying to learn best practices.

Thank you for your help and let me know if you have any clarifying questions. Also, please let me know if there is a better way to post questions in order to accurately convey what I want to accomplish and to allow others to help as easily as possible.



Code:
gen       RidealDiet = . 
replace RidealDiet = 3 if idealFruitVeg ==0 & idealfiber ==0 & idealssbweek ==0
replace RidealDiet = 2 if RidealDiet !=3 & idealFruitVeg==0 & idealfiber ==0   | RidealDiet !=3 & idealFruitVeg==0  & idealssbweek ==0 | RidealDiet !=3 & idealssbweek ==0  & idealfiber ==0
replace RidealDiet = 1 if RidealDiet !=3 & RidealDiet !=2 & idealFruitVeg==0 | RidealDiet !=3 & RidealDiet !=2 & idealssbweek ==0  | RidealDiet !=3 & RidealDiet !=2  & idealfiber ==0
replace RidealDiet = 0 if RidealDiet !=3 & RidealDiet !=2  & RidealDiet !=1 

label define RidealDiet 3 "3 components" 2 "2 components" 1 "1 component" 0 "0 components"
label value RidealDiet RidealDiet


Code:
* Example generated by -dataex-. To install: ssc install dataex
clear
input float(idealFruitVeg idealfiber idealssbweek)
0 0 1
1 1 1
1 1 1
0 0 0
1 1 0
1 1 0
1 1 1
1 1 0
1 1 1
1 1 1
0 1 1
0 1 1
1 1 1
1 1 1
0 1 1
1 1 1
0 1 1
0 1 0
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 1
1 1 0
1 1 1
0 1 0
0 1 1
0 0 1
1 1 1
end
label values idealFruitVeg idealFruitVeg
label def idealFruitVeg 0 "ideal", modify
label def idealFruitVeg 1 "nonideal", modify
label values idealfiber idealfiber
label def idealfiber 0 "ideal", modify
label def idealfiber 1 "nonideal", modify
label values idealssbweek idealssbweek
label def idealssbweek 0 "ideal", modify
label def idealssbweek 1 "nonideal", modify