The END= option can help you determine when you have reached the last record in your dataset. Here is a syntax example:
set old_ds end=end_var;
if end_var=1 then text='This is the last variable';
The end= option creates a temporary variable, in the example it is end_var. This variable is not written to the output dataset. The variable is numeric and has a value of 1 to specify the last record.
Do not use this option with the point option.
This option is helpful when you only want to output the last record (good for summing data).
data new_ds (drop=transactional_record);
set old_ds end=last_record;
What are Select Groups?
Select Groups are another way SAS enables conditional processing of datasets.
When should we use Select Groups instead of if-then statements?
According to our friends at SAS, you should utilize Select Groups when your conditional criteria is mutually exclusive and numeric. When this is the case, Select Groups are more efficient than if-then processing.
Here are a few examples of conditional processing using Select Groups:
when (1) var2='YES';
when (2) var2='NO';
when (var1=1 and var2='JAN') var3='YES';
when (var1=2 and var2='FEB') var3='NO';