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

I have a column called "score" in my SAS dataset. Each "score" has two records with for c_flag=1 and c_flag=0. When c_flag=1 the "event" column has a value but "nonevent" column is missing. When c_flag=0 the "nonevent" column has a value but "event" column is missing. I want to create another dataset that will list the uniq values of "score" and write the nonmissing event and nonevent values. How do I write this code?

1 ACCEPTED SOLUTION

Accepted Solutions
ErikLund_Jensen
Rhodochrosite | Level 12

Hi @znhnm 

You don't provide any test data, so this is an untested solution, bot I think you could use something like this:

 

proc sql;
   create table want as select distinct
score,
max(event) as event,
max(nonevent) as nonevent
from have
group by score;
quit;

View solution in original post

1 REPLY 1
ErikLund_Jensen
Rhodochrosite | Level 12

Hi @znhnm 

You don't provide any test data, so this is an untested solution, bot I think you could use something like this:

 

proc sql;
   create table want as select distinct
score,
max(event) as event,
max(nonevent) as nonevent
from have
group by score;
quit;

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

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
  • 1 reply
  • 378 views
  • 0 likes
  • 2 in conversation