BookmarkSubscribeRSS Feed
qinghe
Calcite | Level 5

Hi,

 

My data set is huge. I don't want to use the whole data set during programming.  How do I select certain amount of data for each category with proc sql, for example, to get 10 obs for each state/sex/age group?

Best regards,

Qinghe

2 REPLIES 2
LinusH
Tourmaline | Level 20

Is your aim to create a smaller permanent data set?

Why limit yourself to SQL?

If you have SAS/STAT licensed PROC SURVEYSELECT is your go-to for creating samples.

If our data set is sorted, you could use a data step to read the first n observations of the specified BY groups.

Data never sleeps
Kurt_Bremser
Super User

An example for using a sorted dataset:

data want;
_n_ = 1;
do until (last.state);
  set have;
  by state;
  if _n_ le 10 then output;
  _n_ + 1;
end;
run;

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 195 views
  • 4 likes
  • 3 in conversation