哪位高手能为我解释下下面的程序,尤其是从第四行往下的,尽量详细点,各个语句的意思及其作用,多谢了啊!我是菜鸟。
data shifts_drifts;
set lstar;
by sample;
array _n[10] _temporary_ (1 2 3 4 5 6 7 8 9 10);
array _s[10] _temporary_; array _d[10] _temporary_;
if first.sample then call missing(of _s[*] _d[*]);
do k =1 to dim(_n);
if _s[k] <1 then if (sum1 ge (2.01+0.01*(_n[k]-1))) then do;
_s[k] =1; n =_n[k]; cat ='shifts';
output shifts_drifts;
keep sample n i cat;
end;
if _d[k] <1 then if (sum2 ge (2.01+0.01*(_n[k]-1))) then do;
_d[k] =1; n =_n[k]; cat ='drifts';
output shifts_drifts;
keep sample n i cat;
end;
end;
run;