SAS Enterprise Guide

Desktop productivity for business analysts and programmers
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
DME790
Pyrite | Level 9

Hi All,

 

I'm trying to add a percentage from the 'total' in a proc report. I have read a couple of submissions but not making sense to me.

 

My data looks like 9apologies if the test data doesn't work)

data test;
   input ORIGIN_CD TARGET_CD SP04 SP05 SP06 Total;
  datalines;

ABR A 14 12 6 32
ABR B 2 . 1 3
ABR C . 2 1 3
ABR D . 1 . 1
ABR E . . 1 1
ABR F . 1 . 1
ABR G 1 . 1 2
ABR H . 1 . 1
ABR I . . 4 4
ABR J 1 1 1 3
ABR K 1 1 . 2
ABR L . . 1 1
ABR M 1 3 9 13
;
Run;

 

My code is

 

Proc Report data=work.origindestbyqueuecalc;
	by origin_cd;
	Column ORIGIN_CD TARGET_CD SP04 SP05 SP06 Total ;
	define Origin_CD / Display 'Origin';
	Define Target_CD / DISPLAY 'Destination';
	Define SP04 / DISPLAY 'SP2018_04' analysis SUM f=comma9.;
	Define SP05 / DISPLAY 'SP2018_05' analysis SUM f=comma9.;
	Define SP06 / DISPLAY 'SP2018_06' analysis SUM f=comma9.;
	Define Total / DISPLAY 'Total' analysis sum;
	Rbreak after / summarize;
RUN;

which gives me the output of

 

Output2.GIF

and I would like the output to look like the following

Output3.GIF

 

 

Any help appreciated

 

Cheers

 

Dean

 

 

 

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
stat_sas
Ammonite | Level 13

Hi,

 

Please try this.

 

Proc Report data=work.test;
by origin_cd;
Columns ORIGIN_CD TARGET_CD SP04 SP05 SP06 Total Total,(pctsum);
define Origin_CD / Display 'Origin';
Define Target_CD / DISPLAY 'Destination';
Define SP04 / DISPLAY 'SP2018_04' analysis SUM f=comma9.;
Define SP05 / DISPLAY 'SP2018_05' analysis SUM f=comma9.;
Define SP06 / DISPLAY 'SP2018_06' analysis SUM f=comma9.;
Define Total / DISPLAY 'Total' analysis sum;
Define pctsum / 'Percentage' format=percent6. width=8;
Rbreak after / summarize;
RUN;

View solution in original post

2 REPLIES 2
stat_sas
Ammonite | Level 13

Hi,

 

Please try this.

 

Proc Report data=work.test;
by origin_cd;
Columns ORIGIN_CD TARGET_CD SP04 SP05 SP06 Total Total,(pctsum);
define Origin_CD / Display 'Origin';
Define Target_CD / DISPLAY 'Destination';
Define SP04 / DISPLAY 'SP2018_04' analysis SUM f=comma9.;
Define SP05 / DISPLAY 'SP2018_05' analysis SUM f=comma9.;
Define SP06 / DISPLAY 'SP2018_06' analysis SUM f=comma9.;
Define Total / DISPLAY 'Total' analysis sum;
Define pctsum / 'Percentage' format=percent6. width=8;
Rbreak after / summarize;
RUN;

DME790
Pyrite | Level 9

Thanks @stat_sas

 

Is exactly what I was looking for.

 

Cheers

 

Dean

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1265 views
  • 2 likes
  • 2 in conversation