datestr problem with minutes

1 view (last 30 days)
Vanessa
Vanessa on 29 Jun 2017
Commented: Andrei Bobrov on 29 Jun 2017
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
Vanessa
Vanessa on 29 Jun 2017
kwhm.date=datestr(kwhm.date,'yyyy-mm-dd HH:MM:SS');
date '1/5/2017 12:10:00AM' '1/5/2017 12:15:00AM' '1/5/2017 12:20:00AM' etc
Andrei Bobrov
Andrei Bobrov on 29 Jun 2017
Dear Vanessa! please accept the answers that solved your problems.

Sign in to comment.

Answers (2)

Walter Roberson
Walter Roberson on 29 Jun 2017
t = datenum('1/5/2017 12:10:00AM' );
datestr(t, 'YYYY-mm-DD HH:MM:ss')

Andrei Bobrov
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
Vanessa
Vanessa on 29 Jun 2017
Thank you very much!!!
Andrei Bobrov
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')

Sign in to comment.

Categories

Find more on Dates and Time in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!