run the following data step
data test;
p=-2;
set sashelp.class point=p;
run;
There is no error message and data step fall a dead loop! I just wonder to where the pointer pointed when the value of p is negative and why no error message in log window.
Hi @Steve1964 The reason for infinite loop is because when point= option random direct access is used based on observation number, SAS can't find the "End of file" marker. Therefore you would need a STOP statement to end the datastep iteration.
Add a STOP after the set statement and take a look at the log, you should see the invalid OBS No of point=var option triggering _ERROR_ =1 .
Hi @Steve1964 The reason for infinite loop is because when point= option random direct access is used based on observation number, SAS can't find the "End of file" marker. Therefore you would need a STOP statement to end the datastep iteration.
Add a STOP after the set statement and take a look at the log, you should see the invalid OBS No of point=var option triggering _ERROR_ =1 .
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.