BookmarkSubscribeRSS Feed
raivester
Quartz | Level 8

I am wondering if there is a more efficient way to append a bunch of data sets during read in. Fortunately, all the data sets I am working with follow the same naming convention and only differ in a single number that increments each year. I have been doing the below, but since is this something I will simply have to add to each year, am wondering if there is a way to use a macro (indicating the most recent year) and a loop to make this more efficient.

 

data app_data;
	  set 	ds2015
			ds2016
			ds2017
			ds2018
			ds2019
			ds2020;

        *Other stuff happens;
run;

3 REPLIES 3
Tom
Super User Tom
Super User

Since your datasets are using nice sequential numeric suffixes you can use a dataset list.

data app_data;
  set ds2015-ds2020;
run;
PhilC
Rhodochrosite | Level 12

Depending on your situation, this maybe useful.  A colon is used as a wildcard for datasets.

data app_data;
  set ds: ;
run;

This will select ALL datasets in WORK with the "ds" prefix, mind you.  

Cynthia_sas
SAS Super FREQ
Hi:
If "other stuff happens then the DATA step is the best way to append. If all you needed to do was the append and none of the other stuff, then you could use PROC APPEND.
Cynthia

sas-innovate-2024.png

Available on demand!

Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.

 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

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
  • 3 replies
  • 504 views
  • 5 likes
  • 4 in conversation