# Calculate mean value from different matrices

조회 수: 13(최근 30일)
Mepe 2020년 12월 30일
댓글: Ameer Hamza 2020년 12월 30일
Hi there,
I have 5 different matrices (10x10000), where I want to calculate the mean value of the individual rows column by column, so that the end result is a single 10x10000 matrix. How can I do this most elegantly with the "mean" command?
##### 댓글 수: 1표시숨기기 없음
Image Analyst 2020년 12월 30일
How do you end up with the same size result? If you have a 10x10000 matrix, then taking the mean of rows, going across columns, is like this
rowMeans1 = mean(M1, 2); % Result is a 10 x 1 vector.
and the result is a 10 x 1 vector. So if you had 5 or those, even if you stitched them together you'd have a 10x5 matrix.
overallResults = [rowMeans1, rowMeans2, rowMeans3, rowMeans4, rowMeans5]; % 10x5
Or if you went in the other direction
columnMeans1 = mean(M1, 1); % Result is a 1 x 10000 vector.
Stitching together 5 of them would give a 5x10000 matrix.
overallResults = [rowMeans1; rowMeans2; rowMeans3; rowMeans4; rowMeans5]; % 5x10000

댓글을 달려면 로그인하십시오.

### 채택된 답변

Ameer Hamza 2020년 12월 30일
How are 5 matrices available? Is it a cell array? Try something like this
C = {M1, M2, M3, M4, M5};
M = cat(3, C{:});
M_mean = mean(M, 3)
##### 댓글 수: 4표시숨기기 이전 댓글 수: 3
Ameer Hamza 2020년 12월 30일
I wish I could subscribe to that toolbox :D . I just guessed based on confusing wording in the question and the intended size of the output matrix.

댓글을 달려면 로그인하십시오.

### Community Treasure Hunt

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

Start Hunting!