my code indicates that 28.99% have bmicalc<18.5 in 1991, 29.35% in 1993, but only 3.02% in 1992; is data ok?

data bmivars;

set inpath.ihis_00002 (where=(BMICALC ne 996));

* POPUNDERWEIGHTED ;

if BMICALC <18.5 then weight_under = 1 ;

else weight_under =0 ;

run ;

proc freq data=bmivars ;

tables weight_under / norow nocol out=weight_under_1991 ;

weight SAMPWEIGHT ;

where year in (1991);

by year ;

run ;

proc freq data=bmivars ;

tables weight_under / norow nocol out=weight_under_1992 ;

weight SAMPWEIGHT ;

where year in (1992);

by year ;

run ;

proc freq data=bmivars ;

tables weight_under / norow nocol out=weight_under_1993 ;

weight SAMPWEIGHT ;

where year in (1993);

by year ;

run ;

I think there may be an issue with your code, as I am seeing relatively constant rates of underweight persons across those years. Note that the NIU code for BMICALC is 0, so you’d want to exclude persons with that value. Additionally, the appropriate weight for BMICALC in those years is PERWEIGHT. You can find this information here. Please feel free to let us know if you continue to run into problems.