MATLAB Answers

Finding yearly average of data in a matrix

1 view (last 30 days)
Billy Dipre
Billy Dipre on 30 Mar 2020
Answered: dpb on 30 Mar 2020
I have a 13459x2 matrix where the first column is the year the data was taken and the second column is the data value. The data was taken "daily" for each year but a lot of the years do not actually have the same number of data points. I was originally going through and looking for which rows the years started and ended and my code looked like this:
mean1978 = (sum(iceArea(1:34,2)))/34;
But this became really tedious considering this is over the course of 40 years and 13459 rows to sift through. So is there a way where I could just say something like
mean1978 = (sum(iceArea(==1978,2)))/ % # of rows ==1978;
so I just enter the year instead of finding the start and end rows?

  0 Comments

Sign in to comment.

Accepted Answer

dpb
dpb on 30 Mar 2020
Of course there is..."grouping variables"
[meanByYear,yr,yrcounts]=groupsummary(iceArea(:,2),iceArea(:,1),'mean');

  0 Comments

Sign in to comment.

More Answers (0)

Sign in to answer this question.

Products


Translated by