date and time serial conversion
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
AA
am 4 Nov. 2014
Bearbeitet: per isakson
am 5 Nov. 2014
I have a table with one million rows and 5 columns. The first column has the dates and the second column the time. I want toconvert the date and time to a number as i want to turn the table into a matrix and a matrix cannot have date and time.
4 Kommentare
per isakson
am 4 Nov. 2014
"appear as 26072004"   Why do you want it that way? To me that is asking for problems down the road.
Akzeptierte Antwort
per isakson
am 4 Nov. 2014
Bearbeitet: per isakson
am 5 Nov. 2014
Hint:
>> sdn = datenum('04.11.2014','dd.mm.yyyy' )
sdn =
735907
Matlabs serial date number and
>> [60,1]*sscanf( '12:48', '%2d:%2d')
ans =
768
minutes after midnight
A nice thing about this is that you get integers (flint) and do not need to worry about precision when you do comparisons.
 
Some code added
fid = fopen('AA.txt');
cac = textscan( fid, '%s%s%f' );
fclose(fid)
[60,1]*sscanf( transpose(char(cac{2})),'%2d:%2d', [2,inf] )
returns
ans =
767 768 769
where   AA.txt   contains
04.11.2014 12:47 1
04.11.2014 12:48 2
04.11.2014 12:49 3
2 Kommentare
per isakson
am 4 Nov. 2014
Bearbeitet: per isakson
am 4 Nov. 2014
"the table"   what do you mean by table? Do you mean a text-file?
"x"   what is x?
Weitere Antworten (1)
Michael Haderlein
am 4 Nov. 2014
You can use datenum:
datevec(datenum('04.11.2014 12:48','dd.mm.yyyy HH:MM'))
ans =
2014 11 4 12 48 0
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!