如何使用 SAS 对变量求和并在最后一行记录总计

fly*_*y36 1 sas

我有一个数据集如下所示:

Name   Number
a      1
b      2
c      9
d      6
e      5.5
Total  ???
Run Code Online (Sandbox Code Playgroud)

我想计算变量的总和Number并将总和记录在最后一行(对应于 Name = 'total')。我知道我可以使用 proc 方法执行此操作,然后将输出合并回该文件。但这似乎效率不高。请问谁能告诉我是否有更好的方法。

DCR*_*DCR 5

您可以在数据集中执行以下操作:

data test2;
drop sum;
set test end = last;
retain sum;
if _n_ = 1 then sum = 0;
sum = sum + number;
output;
if last then do;
NAME = 'TOTAL';
number = sum;
output;
end;
run;
Run Code Online (Sandbox Code Playgroud)

只需要遍历一次数据集