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;
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
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.