datestr problem with minutes
1 view (last 30 days)
Show older comments
Hello everyone,
I'm encountering a problem with date conversion. I have a dataset column with dates in '1/5/2017 12:10:00AM' form and I want to convert it into '2017-05-01 00:10:00' format. I used the datestr function but the minutes are incorrect. All rows return with 00 minutes.
How can I fix this?
Thank you in advance, Vanessa
3 Comments
Answers (2)
Walter Roberson
on 29 Jun 2017
t = datenum('1/5/2017 12:10:00AM' );
datestr(t, 'YYYY-mm-DD HH:MM:ss')
0 Comments
Andrei Bobrov
on 29 Jun 2017
Edited: Andrei Bobrov
on 29 Jun 2017
a = datetime('1/5/2017 12:10:00AM','I','dd/MM/yyyy hh:mm:ssa','F','yyyy-MM-dd HH:mm:ss')
4 Comments
Andrei Bobrov
on 29 Jun 2017
a = {'1/5/2017';
'1/5/2017 12:10:00AM';
'1/5/2017 12:15:00AM';
'1/5/2017 12:20:00AM';
'2/5/2017'};
t = ~cellfun(@isempty,regexp(a,'\d{4}$'));
a(t) = cellfun(@(x)[x,' 00:00:00AM'],a(t),'un',0);
out = datetime(a,'I','dd/MM/yyyy hh:mm:ssa','F','yyyy-MM-dd HH:mm:ss')
See Also
Categories
Find more on Elementary Math 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!