BookmarkSubscribeRSS Feed
Almoha
Calcite | Level 5

All,

 

I have the following data structure (see attachment)

 

 

 

 

Days is calculated as ENDT-STDT+1

and I should be able to create the following data structure i.e. expand the STDT , ENDT interval in to 7 records(# of days ) and populate values in quan variable as follows (10 ,  0 , 10 .. upto ENDT)

 

 

 

Thanks in advance

1 REPLY 1
novinosrin
Tourmaline | Level 20
data have;
input sub stdt :date7.  endt :date7.  quan;
format stdt date7.  endt date7. ;
cards;
111 10feb18 16feb18 10
222 10feb18 15feb18 5
;

data want;
set have(rename=(quan=_q));
call missing(_iorc_);
do stdt=stdt to endt;
endt=stdt;
_iorc_+1;
quan=ifn(mod(_iorc_,2) ne 0, _q,0);
output;
end;
drop _:;
run;

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 891 views
  • 0 likes
  • 2 in conversation