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

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

 Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 16 Nov. 2020
Bearbeitet: Ameer Hamza am 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 Kommentare

Thank you Ameer for your help. Although i tried it and got the error message. The column name is Date so i selected it , to convert the entire column but got that erro message
>> T = readtable('Weather_Data.csv');
>> T.Date = datetime (T.Date, 'InputFormat' , 'dd / MM / yyyy hh' );
Error using datetime (line 636)
Unable to convert the text to datetime using the format 'dd / MM / yyyy hh'.
It worked... I added a space before the brackets initially that was why i got the error message. Thanks again Ameer
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'.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by