用do循环求得一数据集,却始终都会各组多一行,百思不得其解,贴上代码和结果,望大侠出手相助,不胜感激!!
code:
data timing;
format data yymmdd10. initialdate yymmdd10. sort best12.;
data='20aug2017'd;
initialdate='04jul2017'd;
sort=3+((data-initialdate)-33)/7;
call symput('data',data);
call symput('initialdate',initialdate);
call symput('sort',sort);
run;
data dt2;
format startdate yymmdd10. enddate yymmdd10. reviewstart yymmdd10. reviewend yymmdd10.;
startdate=&initialdate. -7;
do sort=1 to &sort.;
startdate+7;
enddate=startdate+6;
reviewstart=startdate+3;
do reviwnum=1 to &sort. until ((&data.-reviewstart)=9);
reviewstart+7;
reviewend=reviewstart+6;
output;
end;
output;
end;
run;
问题是sort每组最后都会多一行重复值,如何解?