BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Gil_
Quartz | Level 8
I have a table that has a start time which is a datetime field ... I need to convert the start time to a morning time if the original eq 22:30. I need it to change time to 08:00 and day would be the following day
For example

Start time new time
29Apr18 22:30:00. 30Apr18 08:00:00

29Apr18 01:00:00. 30Apr18 08:00:00
1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20
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;

View solution in original post

4 REPLIES 4
Gil_
Quartz | Level 8
The start time could vary anyyhing = greater than 22:30
novinosrin
Tourmaline | Level 20
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;
ballardw
Super User

@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;
Gil_
Quartz | Level 8
Thank you

sas-innovate-2024.png

Don't miss out on SAS Innovate - Register now for the FREE Livestream!

Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.

 

Register now!

What is Bayesian Analysis?

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 4 replies
  • 709 views
  • 0 likes
  • 3 in conversation