BookmarkSubscribeRSS Feed
Sheelapolakonda
Fluorite | Level 6

 Differences between DO WHILE and DO UNTIL statements with examples ?

7 REPLIES 7
RW9
Diamond | Level 26 RW9
Diamond | Level 26

What is the question here?  What you have posted appears to be a demand for examples of some SAS syntax.  If you require examples of something specific the manual is fully encompassing, or there are several books out there.  If you have a specific question, please formulate a full explanation, provide example test data in the form of a datastep, what you want out etc.  

BrunoMueller
SAS Super FREQ

Something to remember:

 

DO WHILE, the loop executes 0 - n times

DO UNTIL, the loop executes 1 - n times

 

 

ballardw
Super User

@Sheelapolakonda wrote:

 Differences between DO WHILE and DO UNTIL statements with examples ?


Not a SAS specific question even. These are generic programming concepts.Wikipedia https://en.wikipedia.org/wiki/Do_while_loop  has examples in something like 19 different programming languages.

Tom
Super User Tom
Super User

Two main differences.  

  1. The DO WHILE() will test before executing the code in the loop and DO UNTIL() will test after executing the code.
  2. The tests are backwards. DO WHILE() continues when the condition is TRUE and DO UNTIL() continues when the condition is FALSE.

You use the DO UNTIL () form if you want to insure that the loop always runs at least once.

 

Not sure if these are good examples for you, but they are things that I use frequently.

Process a dataset by groups of records needs to use DO UNTIL() so that the SET statement always runs at least once.

do until (last.id);
   set mydata ;
   by id ;
   ....
end;

Read all records from a text file needs to test if the file has anymore records to prevent SAS from stopping the data step when the INPUT statement reads past the end of the file.

infile 'myfile.csv' dsd firstobs=2 truncover end=eof ;
do while (not eof);
   input a b c ;
   ...
end;

 

Ron_MacroMaven
Lapis Lazuli | Level 10
Tom has covered the basics;
this page has several examples:

http://www.sascommunity.org/wiki/Do_which_loop_until_or_while

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

How to Concatenate Values

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 7 replies
  • 18757 views
  • 5 likes
  • 7 in conversation