我们有这样的数据集
data a;
length id 8 actlevel $6 fee 8;
infile datalines;
input id actlevel fee;
datalines;
1 High 85.20
2 High 124.80
3 Low 149.75
4 Medium 149.75
5 Low 124.80
;
run;
我们必须打印这样的输出
id actlevel fee
1 High 85.20
2 High 124.80
Act Level 210.0
3 Low 149.75
4 Low 124.80
Act Level 274.55
5 Medium 149.75
Act level 634.30
我正在使用代码:
proc sort data=a;
by actlevel;
run;
data total;
set a;
by actlevel;
if first.actlevel then
sum1=0;
sum1+fee;
if last.actlevel then
output;
drop fee;
run;
proc print data=total;
sum sum1;
run;
前两次观察的第一次打印总和(通过行动级别)&然后在所有5次观察的最后一次打印总和中打印另外两次(通过行动级别)观察的总和。
答案 0 :(得分:0)
我认为您不需要在数据步骤中进行任何预处理,以使输出类似于您指定的输出。 onreadystatechange
程序有proc print
这样的工作。
sumby