下面是程序运行后得到数据:
area total
100 125
300 240
700 142.66
请问为什么得到上面的结果呢?我不太理解first.area 的意思。是排序后整个的first?还是每组同样的数中的first? 而且为什么total取代了amount?哪句取代的?
原代码如下:
data pay;
input area amount;
cards;
100 100
100 25
300 160
300 80
700 142.66
;
proc sort data=pay;
by area;
run;
data subtotal;
set pay;
by area;
if first.area then total=0;
total+amount;
drop amount;
if last.area then output;
run;
多谢!
[此贴子已经被作者于2007-11-13 12:30:14编辑过]