Finding an average matrix from each matrix in an array

조회 수: 6 (최근 30일)
Roisin Coveney
Roisin Coveney 2021년 7월 13일
댓글: Roisin Coveney 2021년 7월 14일
I have an array of matrices, each with the same dimensions, I am looking to get one matrix which has the average value of all the matrices at each point, any advice on how to do this?
  댓글 수: 1
Joseph Cheng
Joseph Cheng 2021년 7월 13일
i think the matlab coding help would depend on how you've arranged your array of matrices. but over all if you have matrix of N dimensions and you want the index average across the different matrices; the simplest would be to just add all these together to a single N dimensioned matrix and divide that by total number of matrices.

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

채택된 답변

Image Analyst
Image Analyst 2021년 7월 13일
averageMatrix = (matrix1 + matrix2 + matrix3) / 3;
  댓글 수: 4
Roisin Coveney
Roisin Coveney 2021년 7월 14일
Thank you! My data isn't in a cell array it is in a structural array, when I use that code the following message comes up
Brace indexing is not supported for variables of this type.
Roisin Coveney
Roisin Coveney 2021년 7월 14일
Thanks, just changed it a bit and thats working now!

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

추가 답변 (1개)

Jan
Jan 2021년 7월 13일
편집: Jan 2021년 7월 13일
Which kind of array contains the matrices? A cell array, a numerical 3D array, a struct array? The solution depends on this detail.
A = {rand(4), rand(4), rand(4)}; % Cell array
meanA = sum(cat(3, A{:}), 3);
B = rand(3, 4, 4); % 3 4x4 matrices in numerical 3D array
meanB = reshape(sum(B, 1), 4, 4);
C(1).data = rand(4); % Struct array
C(2).data = rand(4);
C(3).data = rand(4);
meanC = sum(cat(3, C.data), 3)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by