- data a;
- input num s;
- cards;
- 1 1
- 1 2
- 1 3
- 1 4
- 2 5
- 2 6
- 2 7
- 2 8
- 3 9
- 3 10
- 3 11
- 3 12
- 4 13
- 4 14
- 4 15
- 4 16
- ;
- run;
- proc transpose data=a out=b(drop=_name_) prefix=s;
- var s;
- by num;
- run;
- proc transpose data=b(drop=num) out=c(drop=_name_)prefix=s;run;
- /************************************************************************/
- proc transpose data=c out=d(drop=_name_)prefix=s;run;
- data d;set d;num=_n_;run;
- data e(rename=(ss=s));
- set d;
- array s(*) s1-s4;
- do I=1 to dim (s);
- ss=s(I);output;
- end;
- drop i s1-s4;
- run;