I am new to SAS DI. I have one column with monthly date values (DATE) and one column with corresponding quarter values (Date_quarter). I need a table wherein for every quarter date values, I get last 12 month values iteratively. Now I am not sure, how to do it SAS DI. what I have done is in SAS Enterprise Guide, created a macro variable, vdatum, which takes every quarter end values. %let vdatum1 = '30.03.2016'd; %let vdatum2 = '30.06.2016'd; %let vdatum3 = '29.09.2016'd; %let vdatum4 = '30.12.2016'd; %let vdatum5 = '30.03.2017'd; %letvdatum6 = '30.06.2017'd; %let vdatum7 = '29.09.2017'd; %let vdatum8 = '30.12.2017'd; %macro loop(iteration_number); %do i= 1 %to &iteration_number; data loop_trial; set trial.data; where date > intnx('month',&&vdatum&i.,-12,'sameday') and date <= &&vdatum&i.; Date_quarter = intnx('qtr',&&vdatum&i.,0,'beginning'); run; %end; %mend; %loop(8);
... View more