Removing part of a cell array

Hello.
I have a data table 1441x1 reading as a cell. The data in this cell is "06/15/2021 12:00 AM" and changes in time by the minute to make up the 1441x1 cell.
My goal is to be left with an array of only the times, as such "12:00" "12:01"... and so on. Any help is appreciated.

 Accepted Answer

Why not just convert as-is ?
S = '06/15/2021 12:00 AM'
S = '06/15/2021 12:00 AM'
datetime(S, 'InputFormat', 'MM/dd/yyyy hh:mm a', 'Format', 'yyyy/MM/DD HH:mm')
ans = datetime
2021/06/166 00:00
Note the InputFormat uses hh, which is the code for 12-hour numbering format. The 'a' field accepts AM or PM and informs MATLAB of which 12 hour block.
The OutputFormat I coded to use HH which is the code for 24-hour numbering format.

3 Comments

Thank you for your quick answer. This has potential to work, but why does your datetime ans have 166 where 15 should be?
Actually, I was able to get this to work using the different format yyyy-MM-dd which is the one I desired. Thanks!
opps yes DD should have been dd

Sign in to comment.

More Answers (0)

Categories

Community Treasure Hunt

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

Start Hunting!