## how to calculate sum value for only a few rows of values

Super Contributor
Posts: 273

# how to calculate sum value for only a few rows of values

Dear,

In the following data I need to calculte a sum value for a few OBS.

For my data I need to calculate a total value for trt in (15,30,37).

data have;
input ns trt \$ trtc \$;
datalines;
20 15 A
30 30 B
10 37 C
50 Place D
;

output needed;

20 15 A
30 30 B
10 37 C
50 Place D
60 Total E
;

Posts: 1,699

## Re: how to calculate sum value for only a few rows of values

Try code:

proc print data=have(where=(trt in (15,30,37)));

var ns trt trtc;

sum ns;

run;

Super User
Posts: 6,202

## Re: how to calculate sum value for only a few rows of values

To get a data set that matches your output goal:

data want;

set have end=done;

if trt in ('15', '30', '37') then tot_ns + ns;

output;

if done;

ns = tot_ns;

trt='Total';

trtc='E';

output;

drop tot_ns;

run;

It's ready for PROC PRINT or whatever you decide the next step should be.

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