hopewell 发表于 2012-3-11 12:06 
Here is good use of a merge without by.
data a;
input id var;
datalines;
1 1
2 2
3 3
;
data b;
set a end=last;
_n_+1;
if last then call missing(var);
else set a(keep=var) point=_n_;
run;
data b;
merge a a(firstobs=2 keep=var rename=(var=var2));
run;
proc print;run;