MATLAB Answers

How to separate each month of this file?

1 view (last 30 days)
Hello everyone,
Kindly find the attached files (1 data file + 1 description file).
The data file represents data for the whole year of 2018.
Each row represents a data record per hour so that it starts from hour=0 (the 3rd column) to hour=23 and starts again from hour=0 for the next day, and so on.
The days are represented as the Day of Year (DOY) in the 2nd column.
I need to loop over the rows and save each month separately in a text file (i.e. m1, m2, ..., m12).
The issue is that some months have 30 days, some have 31 days, and April sometimes has 28 days or 29 days.
Could you tell me how to separate the whole year into months?
I really appreciate your help.

  0 Comments

Sign in to comment.

Accepted Answer

David Hill
David Hill on 9 Jan 2020
M=cell(1,12);
cy=[0,31,59,90,120,151,181,212,243,273,304,334,365]*24;
for k=2:13
M{k-1}=yourMatrix(cy(k-1)+1:c(k),:);
end

  4 Comments

Show 1 older comment
David Hill
David Hill on 9 Jan 2020
cy is just the moving sum of the days in each month * 24 give the total hours.
Then you just index into your matrix to pull out the data for each month.
Mohamed Nedal
Mohamed Nedal on 9 Jan 2020
Is cy constant for any year? Can it be general or it will need to be changed according to Febreuary whether it's 28 or 29 days?

Sign in to comment.

More Answers (0)

Sign in to answer this question.

Products


Release

R2017b

Translated by