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

Hi i have got a column xy where the values are stored as shown.

                XY
(Drug A)-(Drug-BB)-(Drug-CCC) 
(Drug-BB)-(Drug A)-(Drug-CCC)
(Drug-CCC)-(Drug-BB)-(Drug A)

 

I wanted the output like this.The values to be stored in separate column under a b and c. Please help me if anyone knows the answer for this. 

BC
Drug ADrug-BBDrug-CCC
Drug-BBDrug ADrug-CCC
Drug-CCCDrug-BBDrug A

 

Thanks in advance.

 

1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20
data have;
input xy $50.;
cards;
(Drug A)-(Drug-BB)-(Drug-CCC) 
(Drug-BB)-(Drug A)-(Drug-CCC)
(Drug-CCC)-(Drug-BB)-(Drug A)
;


data want;
set have;
t=compress(tranwrd(xy,')-(' ,','),'()');
a=scan(t,1,',');
b=scan(t,2,',');
c=scan(t,3,',');
drop t;
run;

View solution in original post

2 REPLIES 2
novinosrin
Tourmaline | Level 20
data have;
input xy $50.;
cards;
(Drug A)-(Drug-BB)-(Drug-CCC) 
(Drug-BB)-(Drug A)-(Drug-CCC)
(Drug-CCC)-(Drug-BB)-(Drug A)
;


data want;
set have;
t=compress(tranwrd(xy,')-(' ,','),'()');
a=scan(t,1,',');
b=scan(t,2,',');
c=scan(t,3,',');
drop t;
run;
Aayushi_17
Quartz | Level 8

thank you

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

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
  • 2 replies
  • 1058 views
  • 1 like
  • 2 in conversation