I have a large data that includes multiple observations for each ID.
If I only wanted to select the first entry of each ID, then the below code works.
If I wanted to select the first 5 entries of each ID, then what coding could I use?
Thanks for your help in advance.
data want;
set have;
by id;
if first.id;
run;
@SAS_AMUH wrote:
I have a large data that includes multiple observations for each ID.
If I only wanted to select the first entry of each ID, then the below code works.
If I wanted to select the first 5 entries of each ID, then what coding could I use?
Thanks for your help in advance.
data want;
set have;
by id;
if first.id;
run;
You have to count the obs per ID, code is untestet:
data want;
set have;
by id;
length counter 8;
retain counter;
if first.id then counter = 0;
counter = counter + 1;
if counter <= 5;
run;
@SAS_AMUH wrote:
I have a large data that includes multiple observations for each ID.
If I only wanted to select the first entry of each ID, then the below code works.
If I wanted to select the first 5 entries of each ID, then what coding could I use?
Thanks for your help in advance.
data want;
set have;
by id;
if first.id;
run;
You have to count the obs per ID, code is untestet:
data want;
set have;
by id;
length counter 8;
retain counter;
if first.id then counter = 0;
counter = counter + 1;
if counter <= 5;
run;
Catch the best of SAS Innovate 2025 — anytime, anywhere. Stream powerful keynotes, real-world demos, and game-changing insights from the world’s leading data and AI minds.
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.