Desktop productivity for business analysts and programmers

How to sum along row?

Accepted Solution Solved
Reply
Occasional Contributor SMR
Occasional Contributor
Posts: 16
Accepted Solution

How to sum along row?

Hi,

Is there a way to add a column that would provide sum of values of columns (say there are 200 columns) along the row? For example, to add a new column of 'Sum' below?

Example

A B C D E Sum
2 2 5 1 0 10
..
..

Accepted Solutions
Solution
‎04-26-2017 08:20 AM
Super Contributor
Posts: 260

Re: How to sum along row?

[ Edited ]

First suggestion, using DATA step and the SUM function:

 

data test;
infile cards;
input A1 A2 A3 A4 A5;
cards;
2 2 5 1 0
;
run;

data sums;
 set test;

 /* method 1: array of all numerics */
 array n {*} _numeric_;
 sum_allnum=sum(of n[*]);

 /*method 2: variable range in data set */
 sum_range=sum(of a1-a5);
run;

 

If using EG and you want this in the Query Builder (SQL), you need to add a new computed column.

Its formula is SUM(var1, var2, var3, ...)
(you name each and every variable to sum, and separate them with commas).
Unfortunately the previous shortcut SUM(OF var1-var10) only works in datasteps and EG does not code them for you.

 

cc.png

View solution in original post


All Replies
N/A
Posts: 0

Re: How to sum along row?

data test;
infile cards;
input A1 A2 A3 A4 A5;
cards;
2 2 5 1 0
;
run;

data test2;
set test;
sum = sum (of a1-a5);
run;
Occasional Contributor SMR
Occasional Contributor
Posts: 16

Re: How to sum along row?

Hi Dan,

Could pl. suggest it in using Enterprise Guide? (Not in the programming code,I don't understand the codes at this moment). Thanks
Regards,
Solution
‎04-26-2017 08:20 AM
Super Contributor
Posts: 260

Re: How to sum along row?

[ Edited ]

First suggestion, using DATA step and the SUM function:

 

data test;
infile cards;
input A1 A2 A3 A4 A5;
cards;
2 2 5 1 0
;
run;

data sums;
 set test;

 /* method 1: array of all numerics */
 array n {*} _numeric_;
 sum_allnum=sum(of n[*]);

 /*method 2: variable range in data set */
 sum_range=sum(of a1-a5);
run;

 

If using EG and you want this in the Query Builder (SQL), you need to add a new computed column.

Its formula is SUM(var1, var2, var3, ...)
(you name each and every variable to sum, and separate them with commas).
Unfortunately the previous shortcut SUM(OF var1-var10) only works in datasteps and EG does not code them for you.

 

cc.png

N/A
Posts: 1

Re: How to sum along row?

hey can you please tell me how to sum all the columns with different names....i.e. not a1,a2,a3,a4....but a,b,c,d,....

Thanks

Krishan Avtar Singh

Regular Learner
Posts: 1

Re: How to sum along row?

Use above formula but replace var1,var2,etc. with column name

☑ This topic is SOLVED.

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

Discussion stats
  • 5 replies
  • 20316 views
  • 6 likes
  • 5 in conversation