i have this Matrix, consisting of 3 columns: Column 1: long Column 2: lat Column 3: year
lets say 97x281x15,
I want to make average for each year. so i want the result is 1x15, or 15x1
or kind of look like this
YEAR / DATA AVERAGE
1995 25.786
1996 25.686
1997 25.746
1998 25.686
and so on
Thank you for your suggestions.

2 Comments

Ive J
Ive J on 12 Jul 2021
If you're matrix has 3 columns, the size should be of size rowX3, can you upload a subset of your data (mat/delimited file)?
here is my file, thanks for your time

Sign in to comment.

 Accepted Answer

Matt J
Matt J on 12 Jul 2021
Edited: Matt J on 12 Jul 2021
In recent Matlab,
mean(SSTmonth,[1,2])
In older Matlab,
mean(reshape(SSTmonth,[],15),1)

3 Comments

thanks for your answer, im using matlab R2018a
it gave me error
Error using reshape
Product of known dimensions, 15, not divisible into total number of elements, 681425.
Error in test (line 93)
data = mean(reshape(SSTmonth,[],15),1);
Matt J
Matt J on 12 Jul 2021
Edited: Matt J on 12 Jul 2021
Apparently your array is not 97x281x15 because if so there is no way that 15 would not be divisible into the number of elelments.
oh sorry, my bad. thanks for your help.

Sign in to comment.

More Answers (0)

Tags

Asked:

on 12 Jul 2021

Commented:

on 12 Jul 2021

Community Treasure Hunt

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

Start Hunting!