BookmarkSubscribeRSS Feed
Moyosrie
Calcite | Level 5

i need to delete the record after the record that has status ='y'

data out;
input source $2.  target $2. type $5.;
datalines;
a b temp
b c temp
c b temp
b d perm
;
run;

 

data out1( drop=type rename=(source=source1 target=target1));
set out(firstobs=2);
run;

data new;
merge out out1;
run;

 

data new1(keep=status source target type);
length status $10.  ;
set new ;
if target1=source and source1 =target and type ='temp'
then status = 'Y';
else status= 'n';
run;

 

2 REPLIES 2
Moyosrie
Calcite | Level 5

Moyosrie_0-1606036173726.png

after every 'y' status

 

Ksharp
Super User

data want;
set new1;
if lag(status)='Y' then delete;
run;
How to Concatenate Values

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.

SAS Training: Just a Click Away

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

Browse our catalog!

Discussion stats
  • 2 replies
  • 987 views
  • 0 likes
  • 2 in conversation