Help using Base SAS procedures

Dynamic Sum of Variables

Accepted Solution Solved
Reply
Regular Contributor
Regular Contributor
Posts: 166
Accepted Solution

Dynamic Sum of Variables

Hi,

Could someone point me in the right direction for my below requirement..

I wish to take the sum of variables A: based on the values of the variables START and END.

For Example for the first row in the below dataset the Start value is 1 and End Value is 5 hence the sum is to be calculated for the variables A1 to A5.

Data Have;

input START END A1 A2 A3 A4 A5;

CARDS

1 5 1 2 3 4 5

1 3 1 2 3 4 5

2 4 1 2 3 4 5

;

RUN;

The Final Column to be derived is

15

6

9

Thanks In advance


Accepted Solutions
Solution
‎04-16-2012 10:58 AM
Super User
Super User
Posts: 7,070

Re: Dynamic Sum of Variables

data want ;

set have;

array a a1-a5;

do _n_=start to end;

   total=sum(total,0,a(_n_));

end;

run;

View solution in original post


All Replies
Solution
‎04-16-2012 10:58 AM
Super User
Super User
Posts: 7,070

Re: Dynamic Sum of Variables

data want ;

set have;

array a a1-a5;

do _n_=start to end;

   total=sum(total,0,a(_n_));

end;

run;

Super User
Posts: 10,041

Re: Dynamic Sum of Variables

Almost the same with Tom's .

Data Have;
input START END A1 A2 A3 A4 A5;
CARDS;
1 5 1 2 3 4 5
1 3 1 2 3 4 5
2 4 1 2 3 4 5
;
RUN;
data want ;
set have;
array a a1-a5;
sum=0;
do _n_=start to end;
   sum+a(_n_);
end;
run;

Ksharp

🔒 This topic is solved and locked.

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

Discussion stats
  • 2 replies
  • 395 views
  • 3 likes
  • 3 in conversation