date and time serial conversion
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
AA
el 4 de Nov. de 2014
Editada: per isakson
el 5 de Nov. de 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 comentarios
per isakson
el 4 de Nov. de 2014
"appear as 26072004"   Why do you want it that way? To me that is asking for problems down the road.
Respuesta aceptada
per isakson
el 4 de Nov. de 2014
Editada: per isakson
el 5 de Nov. de 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 comentarios
per isakson
el 4 de Nov. de 2014
Editada: per isakson
el 4 de Nov. de 2014
"the table"   what do you mean by table? Do you mean a text-file?
"x"   what is x?
Más respuestas (1)
Michael Haderlein
el 4 de Nov. de 2014
You can use datenum:
datevec(datenum('04.11.2014 12:48','dd.mm.yyyy HH:MM'))
ans =
2014 11 4 12 48 0
Ver también
Categorías
Más información sobre Dates and Time en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!