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 Kommentare

Ive J
Ive J am 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)?
sky walker
sky walker am 12 Jul. 2021
here is my file, thanks for your time

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Matt J
Matt J am 12 Jul. 2021
Bearbeitet: Matt J am 12 Jul. 2021

0 Stimmen

In recent Matlab,
mean(SSTmonth,[1,2])
In older Matlab,
mean(reshape(SSTmonth,[],15),1)

3 Kommentare

sky walker
sky walker am 12 Jul. 2021
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 am 12 Jul. 2021
Bearbeitet: Matt J am 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.
sky walker
sky walker am 12 Jul. 2021
oh sorry, my bad. thanks for your help.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Gefragt:

am 12 Jul. 2021

Kommentiert:

am 12 Jul. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by