How do I convert datetime in string format to Matlab datetime?

1 view (last 30 days)
I have 8760 rows of data in this format '02/01/2019 09'. I would like to convert this to Matlabe datetime format. Thank you

Accepted Answer

Ameer Hamza
Ameer Hamza on 16 Nov 2020
Edited: Ameer Hamza on 16 Nov 2020
Try following InputFormat
x = '02/01/2019 09';
dt = datetime(x, 'InputFormat', 'dd/MM/yyyy hh')
Result
>> dt
dt =
datetime
02-Jan-2019 09:00:00
  3 Comments
Felicia Ojinji
Felicia Ojinji on 16 Nov 2020
It worked... I added a space before the brackets initially that was why i got the error message. Thanks again Ameer
Steven Lord
Steven Lord on 16 Nov 2020
That text you posted, '02/01/2019 09'. Does it represent January 2nd, 2019 at 9:00 AM? Or does it represent February 1st, 2019 at 9:00 AM? If the latter you want to use MM/dd/yyyy hh'.
s = '02/01/2019 09'
s = '02/01/2019 09'
J = datetime(s, 'InputFormat', 'dd/MM/yyyy hh')
J = datetime
02-Jan-2019 09:00:00
F = datetime(s, 'InputFormat', 'MM/dd/yyyy hh')
F = datetime
01-Feb-2019 09:00:00
Using the wrong format could lead to problems later on if you assumed one of the two potential formats by which s could be interpreted but a later entry is unambiguously in the other format, like:
datetime('20/01/2021', 'InputFormat', 'dd/MM/yyyy')
ans = datetime
20-Jan-2021
datetime('20/01/2021', 'InputFormat', 'MM/dd/yyyy') % Will error
Error using datetime (line 647)
Unable to convert '20/01/2021' to datetime using the format 'MM/dd/yyyy'.

Sign in to comment.

More Answers (0)

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!