问题很简单,但是我retain用得不好,我需要两两相减。就是下面的数字减去上面的一个数字;
数据集是
data a;
input id $ realday spending;
datalines;
10000501 27 27.6
10000501 187 3.9
10000501 201 9.1
10000502 218 3.5
10000501 249 3.6
10000501 270 3.5
10000501 274 8.3
10000501 292 35.7
10000502 322 2.3
10000501 333 7.9
10000501 343 36
10000502 434 4.4
10000501 476 7.9
10000502 486 5
10000501 504 10.2
10000501 508 3.6
;
run;
---------------------------------
我的程序是
proc sort data=a out=b;by id realday;
data b;
retain start ;
set b;
by id realday;
if first.id and first.realday then start=realday;
else dif=realday-start;
run;
但是出来的结果是下面的数字减去第一个数字了。应该怎么解决呢???