How to understand a datenum date?
34 ビュー (過去 30 日間)
古いコメントを表示
I'm trying to write some code that loops through files that are distinguished by date and I want to use the serial dates generated by datenum to do so. However, I'm having trouble understanding how datenum generates the serial date values. For instance, if I execute the following pseudocode:
myPath = 'D:\data\animals'
listing = dir(myPath)
...and if I open the listing I get a struct with one field being the datenum for each file in my directory. I see that the date and time '23-Aug-2021 18:29:25' generates the datenum 7.3839e+05. I don't understand the pattern. How does that date and time generate that exact value?
Thank you!!!
1 件のコメント
Stephen23
2021 年 8 月 25 日
"How does that date and time generate that exact value?"
The DATENUM documentation states: "A serial date number represents the whole and fractional number of days from a fixed, preset date (January 0, 0000) in the proleptic ISO calendar." Thus if you counted all days (including leap days) from day 0 of year 0000 until the 23rd of August 2021, then you will get that serial date number.
Storing dates as a serial number is very common in computing, only the epoch and unit can be very different.
回答 (1 件)
per isakson
2021 年 8 月 24 日
編集済み: per isakson
2021 年 8 月 24 日
A serial date (number) represents time as the number of days (and fraction of days) from January 0, 0000.
sdn = now % the function, now, returns a serial date number
str = datestr( sdn )
datenum( str )
1 件のコメント
Walter Roberson
2021 年 8 月 25 日
Right.
Note that if you are doing serious astronomical or historical work, you need to ask yourself:
- what about leap years?
- what about leap years before the reformation of what constituted a leap year?
- what about the time before leap years were a thing at all?
- What about "the Lost Days" (calendar reform to fix leap year problems), which is something that went into effect in different countries at different times
- What about leap seconds?
- solar day or sidereal days?
参考
カテゴリ
Help Center および File Exchange で Dates and Time についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!