DATA Step, Macro, Functions and more

Split a word from one to two columns

Reply
Occasional Contributor lca
Occasional Contributor
Posts: 10

Split a word from one to two columns

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

PROC Star
Posts: 7,486

Split a word from one to two columns

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;

Frequent Contributor
Posts: 117

Split a word from one to two columns

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

Ask a Question
Discussion stats
  • 2 replies
  • 8382 views
  • 0 likes
  • 3 in conversation