BookmarkSubscribeRSS Feed
mar0000
Obsidian | Level 7
data have;
input Patient_ID $   date  Date9.     Activity $ ;
format date date9.;
datalines;
1234 20FEB2020 Football 
1234 20FEB2020 Basketball 
1234 25FEB2020 Ski 
1234 07SEP2020 Baseball 

 How would I create a variable that says 'Y' to the first line that has patient 1234 playing football, and 'N' to person 1234 playing basketball because they are playing on the same day. I want to say 'Y' to person 1234 on 25FEB2020 and 'Y' for patient 1234 on 07SEP2020. 

 

1 REPLY 1
andreas_lds
Jade | Level 19

So you want to flag the first observation for each Patient_ID and date with "Y" and any other observation with "N"? Assuming that the data is sorted by Patient_ID and date:

data want;
	set have;
	by Patient_ID date;
	
	length status $ 1;

	status = ifc(first.date, 'Y', 'N');
run;
Develop Code with SAS Studio

Get started using SAS Studio to write, run and debug your SAS programs.

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
  • 1 reply
  • 786 views
  • 1 like
  • 2 in conversation