having data
a b
1148 arm
1149 leg
1150 arm;leg;trunk
1151 arm; leg
i want data
a b c
1148 arm arm
1149 leg leg
1150 arm;leg;trunk arm
1150 arm;leg;trunk leg
1150 arm;leg;trunk trunk
1151 arm;leg arm
1151 arm;leg leg
Do like this
data have;
input a $ b:$20.;
datalines4;
1148 arm
1149 leg
1150 arm;leg;trunk
1151 arm;leg
;;;;
data want(drop=i);
set have;
do i = 1 to countw(b, ';');
c = scan(b, i, ';');
output;
end;
run;
Do like this
data have;
input a $ b:$20.;
datalines4;
1148 arm
1149 leg
1150 arm;leg;trunk
1151 arm;leg
;;;;
data want(drop=i);
set have;
do i = 1 to countw(b, ';');
c = scan(b, i, ';');
output;
end;
run;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.
Ready to level-up your skills? Choose your own adventure.