Output format

Reply
anonymous_user
Posts: 0

Output format

Currently my output will display like this

                 Count       Age

Jan 14          12         20-25

Jan 14          66         30-50

Jan 14          67         50+
Feb 14          2          20-25

Feb 14         105        30-50

Feb 14          61         50+

I want it to display

Age    Jan 14      Feb 14

20-25     12              2

30-50     66             105

50+        67             61

Any idea how to do this within my code?

Trusted Advisor
Posts: 1,137

Re: Output format

Please try

proc sort data=have;

by age;

run;

proc transpose data = have out=want;

by age;

id date;

var count;

run;

Thanks,

Jag

Thanks,
Jag
Trusted Advisor
Posts: 1,228

Re: Output format

proc tabulate data=have;

class month age;

var count;

table age,month=' '*count=' '*sum=' '*f=8.0;

run;

Super User
Posts: 9,865

Re: Output format

data have;
input date & monyy10. Count       Age $;
format date monyy.;
cards;
Jan 14          12         20-25
Jan 14          66         30-50
Jan 14          67         50+
Feb 14          2          20-25
Feb 14         105        30-50
Feb 14          61         50+
;
run;
proc sort data=have(keep=date) out=temp nodupkey;by date;run;
data _null_;
 set temp end=last;
 if _n_ eq 1 then call execute('data want(drop=date); merge ');
 call execute(cats('have(where=(date=',date,') rename=(count=',put(date,monyy.),'))'));
 if last then call execute(';by age;run;');
run;


Xia Keshan

Ask a Question
Discussion stats
  • 3 replies
  • 216 views
  • 0 likes
  • 4 in conversation