Why does datenum('n​ull','yyyy​mmdd') return an actual date?

1 visualizzazione (ultimi 30 giorni)
As part of date manipulation, I need to convert a whole array of string dates into numbers? This array may sometimes contain 'null' elements which I should probably take out first.
I was just curious to why
datenum('null','yyyymmdd')
returns 736330 (i.e. 01-Jan-16) and doesn't fail? For example,
datenum('null')
would return an error

Risposta accettata

Jos (10584)
Jos (10584) il 21 Dic 2016
The help of DATENUM states:
Certain formats may not contain enough information to compute a date number. In those cases, hours, minutes, and seconds default to 0, days default to 1, months default to January, and years default to the current year.
Hence the value of 736330. Furthermore, if you do not specify the format identifier (the second argument), the help tells you that
If S is a string, it must be in one of the date formats 0,1,2,6,13,14,15,16,23 as defined by DATESTR.
which is definitely not the case with S being 'null'.

Più risposte (0)

Categorie

Scopri di più su Dates and Time in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by