convert dates to specific format

3 views (last 30 days)
Salma fathi
Salma fathi on 19 Jul 2022
Commented: KSSV on 19 Jul 2022
how can I change the format of the dates in the column shown in the image to the format uuuuMMddHHmm?

Answers (2)

Stephen23
Stephen23 on 19 Jul 2022
Edited: Stephen23 on 19 Jul 2022
My guess is that you have unfortunately stored each date as one numeric value, whose digits just happen to coincide with the date units' digits. This is rather a misuse of numerics, and is best fixed by importing that data correctly, rather than trying to "fix" it later. But you can convert to a proper DATETIME object if required:
N = 200701022359 % ugh
N = 2.0070e+11
D = datetime(string(N),'Format','uuuuMMddHHmm')
D = datetime
200701022359
Checking:
D.Year
ans = 2007
D.Day
ans = 2
D.Minute
ans = 59
Note that you should avoid deprecated functions DATENUM, DATESTR, and DATEVEC.

KSSV
KSSV on 19 Jul 2022
t0 = datenum(today) % probably you have datenums
t0 = 738721
t1 = datetime(datestr(t0)) % convert them to datetime
t1 = datetime
19-Jul-2022
t1.Format % check the format
ans = 'dd-MMM-uuuu'
t1.Format = 'uuuuMMddHHmm' % change the format
t1 = datetime
202207190000
  3 Comments
Stephen23
Stephen23 on 19 Jul 2022
"Any advice how to fix it?"
  1. understand how your date is currently stored.
  2. use that knowledge to select a suitable tool to convert it to DATETIME.
KSSV
KSSV on 19 Jul 2022
Attach your data.

Sign in to comment.

Categories

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

Tags

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!