У меня есть функция даты в столбце EIS (EX: 05FEB2007), я хочу зацикливать год от 31DEC2012 до 31DEC2022, но в цикле должен работать как 31DEC2012-EIS до 31DEC2022-EIS.Функция даты в SAS LOOP
%MACRO NFORE;
%LET UC=100;
%LET YS=2012;
%DO I = 0 %TO 10;
%LET YRS=%EVAL(&YS+&I);
proc sql;
create table FORECAST_&YRS as
select t.*,
case when (31DEC&YRS-EIS)/365<=10 then Segment_10
when (31DEC&YRS-EIS)/365<=20 then Segment_20
when (31DEC&YRS-EIS)/365<=30 then Segment_30
when (31DEC&YRS-EIS)/365<=99 then Segment_35
else stat
end as TSN_AGE_&YRS
from F_AG t;
quit;
%END;
%MEND NFORE;
%NFORE;
Я думаю, что настало время для моего «Я бы хотел, чтобы SAS никогда не изобретала«% do », так как это почти наверняка является чистым ущербом для программирования SAS» ... – Joe
Спасибо Джо .. Попробует попробовать. – user2784588