input start end;
datalines;
1 1
1 2
1 3
1 4
1 5
1 6
1 7
2 1
2 2
3 1
3 2
3 3
3 4
3 5
;
run;
data new;
set old;
by start;
array x(*) endlag1-endlag3;
endlag1=lag1(end);
endlag2=lag2(end);
endlag3=lag3(end);
if first.start then count=1;
do i=count to dim(x);
x(i)=.;
end;
count+1;
run;
proc print data=new;
run;
上述程序运行结果如下: