String to serial date number

Hey I have a textfile: The first coloumn represents year/month and rest of the coloumns are deviations.
txt.PNG
I want to convert the first coloumn to a serial date num. Meaning total days from 0.january, 0000. With the function datenum.
What I have tried is to first import the txt file, lets call it get.txt
f = importdata("get.txt");
Then assign the first coloumn to variable fdate.
fdate = f.textdata;
Then Ive tried to use the datenum function
x = datenum(fdate, "yyyy-mm")
The error I get is:
Error using dtstr2dtnummx
Failed to convert from text to date number.

1 comentario

Guillaume
Guillaume el 23 de Sept. de 2019
I want to convert the first coloumn to a serial date num
Why? Unless you're using a very old version of matlab, using datetime would make a lot more sense.
Attaching an example text file instead of a screenshot (which we can't use for testing) is a lot more useful.
Indicating which version of matlab you use would be useful as well. There's a field to the right of question where you can enter the product (matlab) and the version.

Iniciar sesión para comentar.

 Respuesta aceptada

Stephen23
Stephen23 el 23 de Sept. de 2019

0 votos

datenum(fdate, "yyyy-mm")
% ^ this character does not match your date data!

2 comentarios

Olaf
Olaf el 23 de Sept. de 2019
Oh thanks so much. How can I then show total days from 0 january, 0000 for each row?
Guillaume
Guillaume el 23 de Sept. de 2019
If you use datetime as I commented, dead easy:
days(yourdatetimearray - datetime(0, 0, 0))

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Etiquetas

Preguntada:

el 23 de Sept. de 2019

Comentada:

el 23 de Sept. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by