Help using Base SAS procedures

Transpose

Reply
Super Contributor
Posts: 1,041

Transpose

Hi ,

I have single record per ID

I want to make it to multiple records per ID as shown.

Could someone help me how to achieve this result???

Thanks

ID            dept1         dept2          startdate1                    startdate2                  enddate1                   enddate2         span1   span2

101         10thfloor                        22JUL14:21:21                 .                         26JUL14:14:06                 .                    3.6          0

102         9thfloor      9thfloor         19JUL14:17:48       24JUL14:13:19    24JUL14:10:06        29JUL14:18:59              4.6      5.2

WANT:

ID      LOCATION        IN                          OUT                          SATY

101       10thfloor      22JUL14:21:21      26JUL14:14:06            3.6

101                                .                             .                                0

102         9thfloor   19JUL14:17:48      24JUL14:10:06               4.6

102         9thfloor   24JUL14:13:19      29JUL14:18:59               5.2

Super User
Posts: 19,810

Re: Transpose

Posted in reply to robertrao
Super User
Posts: 10,028

Re: Transpose

Posted in reply to robertrao

OK. Give you an example .

data have;
input ID            dept1  : $20.       dept2   : $20.       startdate1     : datetime20.               startdate2    : datetime20.               enddate1     datetime20.               enddate2     datetime20.     span1   span2 ;
cards;
101         10thfloor          .              22JUL14:21:21                 .                         26JUL14:14:06                 .                    3.6          0
102         9thfloor      9thfloor         19JUL14:17:48       24JUL14:13:19    24JUL14:10:06        29JUL14:18:59              4.6      5.2
;
run;
data  want;
 set have;
 array d{*} $ dept:;
 array s{*} startdate:;
 array e{*} enddate:;
 array sp{*} span:;
 do i=1 to dim(d);
  location=d{i};
  in=s{i};
  out=e{i};
  stay=sp{i};
  output;
end;
keep id location in out stay;
run;
 

Xia Keshan

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