Create an "other" category. Because the only valid values for this application are 0-16, any other value (such as missing) should be indicated as an error to the user. The IF statement executes only after the DATA step has processed the last observation from the input data set. When IF executes, HLO receives a value of O to indicate that the range is OTHER, and LABEL receives a value of ***ERROR***. The OUTPUT statement writes these values as the last observation in the data set. HLO has missing values for all other observations.


   if last then do;
      hlo='O';
      label='***ERROR***';
      output;
   end;
run;