- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Differences between DO WHILE and DO UNTIL statements with examples ?
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Maxim 1: Read the Documentation
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
PS and use a more descriptive subject line in the future. "Base SAS" in an exclusively SAS-oriented forum is, ahem, not very bright.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Something to remember:
DO WHILE, the loop executes 0 - n times
DO UNTIL, the loop executes 1 - n times
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@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.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Two main differences.
- The DO WHILE() will test before executing the code in the loop and DO UNTIL() will test after executing the code.
- 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;
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
this page has several examples:
http://www.sascommunity.org/wiki/Do_which_loop_until_or_while