Averaging Every Element of some matrices

2 views (last 30 days)
I have 40 matrices of 12x1. How can I take the the each element of every matrix and get a averaged matrix which will be 12x1

Accepted Answer

Stephen23
Stephen23 on 6 Oct 2020
The simple answer is to concatenate all of your matrices into one array, and then use mean. Of course all of your matrices should be in one cell array, because that makes them much easier to work with:
C{1} = [..];
C{2} = [..];
..
C{40} = [..];
A = cat(3,C{:});
M = mean(A,3)
  3 Comments
Joydeb Saha
Joydeb Saha on 7 Oct 2020
C{1} = [total1979_125_30];
C{2} = [total1980_125_30];
C{3} = [total1981_125_30];
C{4} = [total1982_125_30];
C{5} = [total1983_125_30];
...upto C{40} = [total2019_125_30];
just help me making the loop

Sign in to comment.

More Answers (1)

KSSV
KSSV on 6 Oct 2020
Read about mean. You can specify your required dimension to get the mean along.
A = rand(12,1,40) ;
M = mean(A,3) ;
  1 Comment
Joydeb Saha
Joydeb Saha on 7 Oct 2020
I understand and thank you for the support. Can you just help me out by making a loop for the 40 matrices? say..
C{1} = [..];
C{2} = [..];
..
C{40} = [..];
My matrices are in the name as 'total1979_125_30' , 'total1980_125_30', ... upto 'total2019_125_30' . Each are having 12x1 format.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!