Help using Base SAS procedures

Splitting one row to multiple rows

Reply
Occasional Contributor
Posts: 9

Splitting one row to multiple rows

I need to split one row in a dataset to multiple rows.

Example:
Initial dataset:
a b ccc d 1000 2000 1500 x
e f ggg k 3000 4000 7000 y


Final dataset:
a b ccc d 1000 x1
a b ccc d 2000 x2
a b ccc d 1500 x3
e f ggg k 3000 y1
e f ggg k 4000 y2
e f ggg k 7000 y3



How can i do?
Thanks
MPaola
Super User
Posts: 9,681

Re: Splitting one row to multiple rows

[pre]
data temp;
input a $ b $ c $ d $ e f g h $;
cards;
a b ccc d 1000 2000 1500 x
e f ggg k 3000 4000 7000 y
;
run;
data result;
set temp;
array x{*} e--g;
do i=1 to dim(x);
_x=x{i};_h=cats(h,i);
output;
end;
drop i e--g h;
run;
[/pre]





Ksharp
Ask a Question
Discussion stats
  • 1 reply
  • 132 views
  • 0 likes
  • 2 in conversation