data want;
starttime='29Apr18 22:30:00'dt;
if timepart(starttime)='22:30't then starttime=dhms(datepart(intnx('dtDay', starttime, 1)),8,0,0);
format starttime datetime20.;run;
data want;
starttime='29Apr18 22:30:00'dt;
if timepart(starttime)='22:30't then starttime=dhms(datepart(intnx('dtDay', starttime, 1)),8,0,0);
format starttime datetime20.;run;
@Gil_ wrote:
The start time could vary anyyhing = greater than 22:30
But your example
29Apr18 01:00:00. 30Apr18 08:00:00
I much less than 22:30. Was that a typo of some flavor.
Possibly intending
30Apr18 01:00:00. 30Apr18 08:00:00
Which would likely mean that your rule is "any time after 22:30 on one day gets advanced to 08:00 the next day
and any time prior to 08:00 gets set to 08:00 for the same day".
Example of the above rule:
data want; input starttime datetime.; format starttime datetime.; if timepart(starttime) ge '22:30't then wanttime=dhms(datepart(starttime)+1,8,0,0); else if timepart(starttime) < '08:00't then wanttime=dhms(datepart(starttime),8,0,0); else wanttime=starttime; format wanttime datetime.; datalines; 29Apr18:22:30:00 30Apr18:01:00:00 30Apr18:12:00:00 ; run;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.