Hello!
I've been reading in an .xls file (although I'd like it to be .csv if that were possible for Matlab to read dates from) and am having trouble with it. They currently are set up in mm/dd/yy format and when read into matlab convert to a multiple digit code that I can't seem to translate back to original dates.
The first date listed is 6/1/90 and converts to the code 33025. Any ideas? Thanks!

2 comentarios

Nelson Mok
Nelson Mok el 1 de Jun. de 2016
Hope this help.
clear; t = readtable('ABC.xls'); datestr(x2mdate(t.Date),'mm/dd/yy')
Walter Roberson
Walter Roberson el 1 de Jun. de 2016
readtable() did not exist at the time the original question was posted.
These days you would use
t = readtable('ABC.xls');
t.Date = datetime(t.Date, 'ConvertFrom', 'Excel', 'Format', 'MM/dd/yy');

Iniciar sesión para comentar.

 Respuesta aceptada

Evan
Evan el 2 de Jul. de 2013
Editada: Evan el 2 de Jul. de 2013

2 votos

That data you are reading is being brought in as a date number instead of a date string. The following function allows you to convert date numbers to date strings:
help datestr
You can specify the style that you want datestr to return like so:
d = 33025;
ds = datestr(d,2)
In this case, the 2 argument causes datestr to return in "mm/dd/yyy" format. The documentation for datestr tells what styles are available.

2 comentarios

Theodore
Theodore el 2 de Jul. de 2013
Worked PERFECTLY! Thanks so much!
Evan
Evan el 2 de Jul. de 2013
Great! You're welcome!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Etiquetas

Preguntada:

el 2 de Jul. de 2013

Comentada:

el 1 de Jun. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by