Generate a Definite timestamp sequence
7 次查看(过去 30 天)
显示 更早的评论
How can I generate a column with a timestamp showing day-month-year hh:mm:ss for every 5 mins of a month? For example I need to create a column for every 5mins of March, therefore the table should show like this:
01/03/2018 00:00:00
01/03/2018 00:05:00
01/03/2018 00:10:00 until
31/03/2018 23:55:00
0 个评论
回答(1 个)
per isakson
2018-6-12
编辑:per isakson
2018-6-12
The old way
>> vec = repmat([2018,3,1,0,0,0], 31*24*12, 1 );
>> minutes = ( 0 : 5 : 5*(31*24*12-1) )';
>> vec(:,5) = minutes;
>> sdn = datenum( vec );
>> str = datestr( sdn, 'dd/mm/yyyy HH:MM:SS' );
>> str(1:4,:)
ans =
4×19 char array
'01/03/2018 00:00:00'
'01/03/2018 00:05:00'
'01/03/2018 00:10:00'
'01/03/2018 00:15:00'
>> str(end,:)
ans =
'31/03/2018 23:55:00'
However, I guess this is not exactly what you want.
The new way (Introduced in R2014b)
>> t = datetime( vec );
>> t(1)
ans =
datetime
01-Mar-2018 00:00:00
>> t(end)
ans =
datetime
31-Mar-2018 23:55:00
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!