I'm using Matlab R2015b. I have "date" variable ( 178x1 cell ) inside a struct named "data". It consists of one column with multiple rows that consists of dates in dd/mm/yyyy format. Now I'm trying to convert them into numbers using datenum command,
dates = datenum(data.date, 'dd/mm/yyyy');
but it returns me with error.. What am I doing wrong? I've attached a screenshot of what the data looks like. Thanks in advance.

댓글 수: 1

Adhi Ariawan
Adhi Ariawan 2017년 11월 29일
Additional note: I noticed I have non-date data on the first row.. How do I treat the first row as NaN data?

댓글을 달려면 로그인하십시오.

 채택된 답변

Star Strider
Star Strider 2017년 11월 29일

0 개 추천

Note that the first row is the string ‘date’. The datenum function will fail on that, so start with the second row instead.

댓글 수: 4

Adhi Ariawan
Adhi Ariawan 2017년 11월 29일
How can I do that? haha (Sorry I'm newbie)
My general solution is for you to address the rows of your array as:
dates = datenum(data.date(2:end), 'dd/mm/yyyy');
This is a guess, so make any necessary changes.
Sorry to bother again, your solution was great, but after using (2:end) I'm facing another problem:
Error using horzcat
Dimensions of matrices being concatenated are not consistent.
I got that error when trying to process the new 'date' with the other data inside of struct. So I was wondering if we can keep the first row as NaN or something. Thanks again.
Star Strider
Star Strider 2017년 11월 29일
My pleasure.
You have to use 2:end with every column.
No worries!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Peter Perkins
Peter Perkins 2017년 11월 29일

0 개 추천

If you have R2015b, you will likely be happioer using datetimes rather than datenums:
dates = datetime(data.date(2:end),'Format','dd/mm/yyyy')
You may also want to use a table, rather than a scalar struct, but hard to say without seeing more.

카테고리

도움말 센터File Exchange에서 Time Series Objects에 대해 자세히 알아보기

태그

질문:

2017년 11월 29일

댓글:

2017년 11월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by