- proc sort have;
- by code date;
- run;
- data want;
- set have;
- by code date;
- time_lag = lag(time);
- if first.date then time_lag=time;
- time_dif = (time - time_lag)/5/60;
- if time_dif > 1 then do;
- do i = 1 to time_dif;
- time = time_lag + 5*60*i;
- output;
- end;
- end;
- else output;
- drop time_lag time_dif i;
- run;