express datetime from now, every 3h
    5 views (last 30 days)
  
       Show older comments
    
    Jeong_evolution
      
 on 30 Oct 2016
  
    
    
    
    
    Commented: Jeong_evolution
      
 on 3 Nov 2016
            code is
---------------------------------------------------------------
t = datetime('now','TimeZone','local','Format','y-MMM-d HH');
---------------------------------------------------------------
In command,
---------------------------------------------------------------
t = 2016-Oct-31 00
---------------------------------------------------------------
But I want to express in command
---------------------------------------------------------------
t_1 = 2016-Oct-30 00
t_2 = 2016-Oct-30 03
t_3 = 2016-Oct-30 06
---------------------------------------------------------------
every 3 hour
.
.
.
please help me
0 Comments
Accepted Answer
  Peter Perkins
    
 on 2 Nov 2016
        In addition to Walter's suggestions, it may also be possible to take advantage of the roll-over behavior of the datetime constructor:
>> datetime(2016,11,1,(0:3:36)',0,0)
ans = 
  13×1 datetime array
   01-Nov-2016 00:00:00
   01-Nov-2016 03:00:00
   01-Nov-2016 06:00:00
   01-Nov-2016 09:00:00
   01-Nov-2016 12:00:00
   01-Nov-2016 15:00:00
   01-Nov-2016 18:00:00
   01-Nov-2016 21:00:00
   02-Nov-2016 00:00:00
   02-Nov-2016 03:00:00
   02-Nov-2016 06:00:00
   02-Nov-2016 09:00:00
   02-Nov-2016 12:00:00
More Answers (1)
  Steven Lord
    
      
 on 30 Oct 2016
        Don't create individual variables. Instead use the colon operator to create a vector.
N = datetime('now');
d = N:hours(3):(N+days(1));
% or
d = N + hours(0:3:24);
See Also
Categories
				Find more on Dates and Time in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

