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 Kommentar

Guillaume
Guillaume am 23 Sep. 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.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Stephen23
Stephen23 am 23 Sep. 2019

0 Stimmen

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

2 Kommentare

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Gefragt:

am 23 Sep. 2019

Kommentiert:

am 23 Sep. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by