BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
pmpradhan
Quartz | Level 8

My data looks like below without the flag, I want to create a flag that has the value of 1 when B> A (0 when reverse is true)and it should be missing when either A or B has a missing value.

 

A      BFlag
.       65.
.      12.
626  50
20   ..
.       23.
10251

 

I have tried this;

data X;
set Y;
if (A ne .) or (B ne .) and B >A then flag=1;

else flag=0;
run;

 

and didn't work. 

 

Please help!

 

1 ACCEPTED SOLUTION

Accepted Solutions
pmpradhan
Quartz | Level 8
data x;
set y;
if A =. then flag=.;
else if B=. then flag=.;
else if B>A then flag=1;
else if A >B then flag=0;
run;
Coding for each condition gave me result!

View solution in original post

2 REPLIES 2
pmpradhan
Quartz | Level 8
data x;
set y;
if A =. then flag=.;
else if B=. then flag=.;
else if B>A then flag=1;
else if A >B then flag=0;
run;
Coding for each condition gave me result!
novinosrin
Tourmaline | Level 20

data want;
set have;
if nmiss(a,b)=0 then flag=b>a;
run;

 

EDIT: I really appreciate you self attempt and effort to get a working code. However, once you throw  open a thread in the community, you are sure to get some robust solutions. But well done mate!

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to connect to databases in SAS Viya

Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.

Find more tutorials on the SAS Users YouTube channel.

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