separate date from time
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
hi,
i have timestamp in my data
such as:
874965478
which contains date and time
what I need is separate date from time
I try this
d=datestr(874965478/86400 + datenum('1/1/1970'))
and get
d =
22-Sep-1997 21:57:58
this result do not what i need, i want the timestamp remain integer but without time just date
can do that?
0 Kommentare
Akzeptierte Antwort
per isakson
am 26 Jul. 2012
Bearbeitet: per isakson
am 26 Jul. 2012
The function, floor, does it:
>> floor( 874965478/86400 + datenum('1/1/1970') )
ans =
729655
and check the result
>> datestr( ans, 31 )
ans =
1997-09-22 00:00:00
>>
This, 729655, is serial date number.
Weitere Antworten (1)
Star Strider
am 26 Jul. 2012
Alternatively, change:
d=datestr(874965478/86400 + datenum('1/1/1970'))
to:
d=datevec(874965478/86400 + datenum('1/1/1970'))
then:
d_date = d(1:3)
This gives you the date as a [YYYY MM DD] vector. You can format it as you like as a string with ‘sprintf’ or other functions.
4 Kommentare
per isakson
am 29 Jul. 2012
Bearbeitet: per isakson
am 29 Jul. 2012
You write: "Why", but doesn't say why you question the result.
Your timestamps are seconds after 1/1/1970(?)
In the second case the integer, 874965478, corresponds to approx. 27 years. In the first case the integer, 9783021091, is eleven times larger, i.e. 300 years. The results is plausible.
Siehe auch
Kategorien
Mehr zu Dates and Time finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!