MATLAB: Converting numeric elements to date

@@ star striderazzi abdelmalek

I have converted date to serial number:
A= 10-Jan-2000
D = datenum(A)
D = 730495
And after doing some operation, I want to change (D) it back to the date format. But could not.
Is there any function to convert serial number to date format?

Best Answer

  • Depending what operations you need to perform, you may be able to keep your data as a datetime array without converting it to serial date numbers. But if you do, datetime can convert serial date numbers into a datetime array.
    >> dt = datetime('now')
    dt =
    datetime
    30-Sep-2020 09:48:21
    >> sdn = datenum(dt)
    sdn =
    7.3806e+05
    >> dt2 = datetime(sdn, 'ConvertFrom', 'datenum')
    dt2 =
    datetime
    30-Sep-2020 09:48:21
    As an example of some operations defined on datetime arrays, you can perform date and time arithmetic using datetime and duration arrays.
    >> dt3 = dt + hours(1) + minutes(2) + seconds(3) % datetime + duration = datetime
    dt3 =
    datetime
    30-Sep-2020 10:50:24
    >> du = dt3 - dt2 % datetime - datetime = duration
    du =
    duration
    01:02:03