BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
NewUsrStat
Lapis Lazuli | Level 10

Hi guys, 

suppose to have the following: 

 

ID               Year         

 A              2018

 A              2018

 A              2020

 A              2020

 A              2021

 B              2020

 B              2020

.......           .............

 

Is there a way to get the following? 

 

ID               Year         

 A              2018

 B              2020

.......           .............

 

Meaning: if ID has more than one year like "A" then take the most ancient and take it one time; if ID has more records of the same year, then take the ID and the relative year one time. 

 

Thank you in advance

 

1 ACCEPTED SOLUTION

Accepted Solutions
antonbcristina
SAS Super FREQ

You can achieve this with a simple DATA step.

 

You'll first need to sort the data by ID and YEAR.

proc sort data=have;
 	by id year;
run;

Then use a DATA step with a BY statement, keeping only the first occurence of each ID. Since the data is sorted by ID and YEAR, you'll automatically keep the earliest occurence of each ID.

 

data want;
	set have; 
	by id;
	if first.id;
run;	

View solution in original post

1 REPLY 1
antonbcristina
SAS Super FREQ

You can achieve this with a simple DATA step.

 

You'll first need to sort the data by ID and YEAR.

proc sort data=have;
 	by id year;
run;

Then use a DATA step with a BY statement, keeping only the first occurence of each ID. Since the data is sorted by ID and YEAR, you'll automatically keep the earliest occurence of each ID.

 

data want;
	set have; 
	by id;
	if first.id;
run;	

hackathon24-white-horiz.png

The 2025 SAS Hackathon Kicks Off on June 11!

Watch the live Hackathon Kickoff to get all the essential information about the SAS Hackathon—including how to join, how to participate, and expert tips for success.

YouTube LinkedIn

Mastering the WHERE Clause in PROC SQL

SAS' Charu Shankar shares her PROC SQL expertise by showing you how to master the WHERE clause using real winter weather data.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 726 views
  • 1 like
  • 2 in conversation