alternative to "sum" function e.g. arrays??

Accepted Solution Solved
Reply
Contributor
Posts: 27
Accepted Solution

alternative to "sum" function e.g. arrays??

hi all!

i have to sum 100 variables, i would like to do it without writing all the names  sum(var1,var2,var3, etc)

any good code, may be arrays?


Accepted Solutions
Solution
‎10-10-2013 05:47 PM
Super User
Posts: 10,490

Re: alternative to "sum" function e.g. arrays??

You can use variable lists in sum you name variables with a common stem such as:

total = sum (of varSmiley Happy; to get the total of all variables whose names start with VAR.

If using a numeric suffix as in your example you specify a range:

total = sum (of var1-var100);

You can also mix lists and variable names.

View solution in original post


All Replies
Super User
Posts: 17,792

Re: alternative to "sum" function e.g. arrays??

More details.

Are you summing across a row, or column totals? Do the variables have any naming conventions? Are they side by side at least?

Contributor
Posts: 27

Re: alternative to "sum" function e.g. arrays??

I sum columns totals. I previously rename them var1, var2, var3 and they are side by side, thanks!

Super User
Posts: 17,792

Re: alternative to "sum" function e.g. arrays??

If you need column totals look into proc means and proc summary. Arrays in SAS operate across columns (So sum(var1-var100) would be for each row).

Note the colon after var, then semicolon.

proc means data=have;

var var:;

output out=want1 sum=/autoname;

run;

Or proc means data=have;

var var1-var100;

output out=want2 sum= /autoname;

run;

Solution
‎10-10-2013 05:47 PM
Super User
Posts: 10,490

Re: alternative to "sum" function e.g. arrays??

You can use variable lists in sum you name variables with a common stem such as:

total = sum (of varSmiley Happy; to get the total of all variables whose names start with VAR.

If using a numeric suffix as in your example you specify a range:

total = sum (of var1-var100);

You can also mix lists and variable names.

☑ This topic is SOLVED.

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

Discussion stats
  • 4 replies
  • 1143 views
  • 3 likes
  • 3 in conversation