Desktop productivity for business analysts and programmers

Proc Report percentgae of column based on column total

Accepted Solution Solved
Reply
Frequent Contributor
Posts: 108
Accepted Solution

Proc Report percentgae of column based on column total

Hi All,

 

I need to calculate the percentage of each an observation within that variable.

 

I have this cade at the moment

 

 


data test;
	Input QUEUE_CD $ Bay Network;
	Datalines;
ABS 1 22949
ACD 1 3767
ACE 2 967
ACR 18 20513
ADV 5 92382
ALD 1 1764
ALE 17 13243
ALY 2 5128
CCB 1 25006
CHK 3295 25129

;
Run;


Proc Report data=test;
	Column queue_cd Bay Network BayPercent;
	Define Queue_CD / Display 'Queue';
		Define Bay / Display 'Baylink' Analysis sum f=comma9.;
		Define Network / Display 'Network' Analysis sum f=comma9.0;
		Define BayPercent / Computed 'Bay Percent of Network' f=percent9.2;
			Compute BayPercent;
				BayPercent = Bay.sum / Network.sum;
					Endcomp;
		Rbreak after / summarize;
RUN;  

which gives me the output of                                   Need to add the Bay Percent into the Proc Report

 

Bay1.GIFBay2.GIF

 

Any help appreciated.

 

Cheers

 

Dean

 


Accepted Solutions
Solution
‎12-13-2017 05:15 PM
Contributor RM6
Contributor
Posts: 24

Re: Proc Report percentgae of column based on column total

a compute block to get the total of bay before all the computation will suffice


Proc Report data=test;
	Column queue_cd Bay BayPct Network BayPercent;
	Define Queue_CD / Display 'Queue';
		Define Bay / Display 'Baylink' Analysis sum f=comma9.;
		Define BayPct / Computed 'Bay Percent' f=percent9.2;
		Define Network / Display 'Network' Analysis sum f=comma9.0;
		Define BayPercent / Computed 'Bay Percent of Network' f=percent9.2;
			
			 compute  before; 
				 Bay_tot = Bay.sum; 
				 endcomp;

			Compute BayPct;
				BayPct = Bay.sum / Bay_tot;
					Endcomp;
			Compute BayPercent;
				BayPercent = Bay.sum / Network.sum;
					Endcomp;
		Rbreak after / summarize;
RUN;  

View solution in original post


All Replies
Solution
‎12-13-2017 05:15 PM
Contributor RM6
Contributor
Posts: 24

Re: Proc Report percentgae of column based on column total

a compute block to get the total of bay before all the computation will suffice


Proc Report data=test;
	Column queue_cd Bay BayPct Network BayPercent;
	Define Queue_CD / Display 'Queue';
		Define Bay / Display 'Baylink' Analysis sum f=comma9.;
		Define BayPct / Computed 'Bay Percent' f=percent9.2;
		Define Network / Display 'Network' Analysis sum f=comma9.0;
		Define BayPercent / Computed 'Bay Percent of Network' f=percent9.2;
			
			 compute  before; 
				 Bay_tot = Bay.sum; 
				 endcomp;

			Compute BayPct;
				BayPct = Bay.sum / Bay_tot;
					Endcomp;
			Compute BayPercent;
				BayPercent = Bay.sum / Network.sum;
					Endcomp;
		Rbreak after / summarize;
RUN;  
Super User
Posts: 10,611

Re: Proc Report percentgae of column based on column total


data test;
	Input QUEUE_CD $ Bay Network;
	Datalines;
ABS 1 22949
ACD 1 3767
ACE 2 967
ACR 18 20513
ADV 5 92382
ALD 1 1764
ALE 17 13243
ALY 2 5128
CCB 1 25006
CHK 3295 25129

;
Run;


Proc Report data=test nowd;
	Column queue_cd Bay Bay_Percent Network BayPercent;
	Define Queue_CD / Display 'Queue';
		Define Bay / Display 'Baylink' Analysis sum f=comma9.;
		Define Bay_Percent / Computed 'Bay Percent' f=percent9.2;

		Define Network / Display 'Network' Analysis sum f=comma9.0;
		Define BayPercent / Computed 'Bay Percent of Network' f=percent9.2;
			Compute BayPercent;
				BayPercent = Bay.sum / Network.sum;
			Endcomp;

			compute before;
             sum=bay.sum;
			endcomp;
			Compute Bay_Percent;
				Bay_Percent = Bay.sum / sum;
			Endcomp;

		Rbreak after / summarize;
RUN;  
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 121 views
  • 1 like
  • 3 in conversation