BookmarkSubscribeRSS Feed
lca
Calcite | Level 5 lca
Calcite | Level 5

Hi!

I have a table with a column where some of the values (characters) are separated with a semicolon.

I want to split the values into two columns.

From:

Column 1
1_LeftText;1_RightText
2_Text
3_LeftText;3_RightText

To:

Column 1Column 2
1_LeftText1_RightText
2_Text
3_LeftText3_RightText

Probably easy, but.... 🙂

lca

2 REPLIES 2
art297
Opal | Level 21

data have;

  informat column $50.;

  input column &;

  datalines4;

1_LeftText;1_RightText

2_Text

3_LeftText;3_RightText

;;;;

data want;

  set have;

  format column1 column2 $25.;

  column1=scan(column,1,";");

  column2=scan(column,2,";");

run;

Vish33
Lapis Lazuli | Level 10

Consider Art's code and

drop the variable 'column' from the want data set if you want only two variables column1 and column2.

data want(drop=column);

  set have;

  format column1 column2 $25.;

  column1=scan(column,1,";");

  column2=scan(column,2,";");

run;

proc print data=want;

run;

Regards,

Vish

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
  • 13676 views
  • 0 likes
  • 3 in conversation