Hi! I'm trying to neatly display the means of a 3-D matrix, but can't get the results to print as a 2-D matrix.
test = rand(3,3,4)
for i = 1:3; for j = 1:3; grid = mean(test(i,j,:)) end end
When 'grid' prints it lists the nine means individually rather than placing them in a 3x3 matrix. Any suggestions?
Thanks!

 채택된 답변

Sean de Wolski
Sean de Wolski 2011년 6월 15일

1 개 추천

No reason for a FOR-loop.
grid = mean(test,3); %second input to mean is the dimension to mean along, in this case 3.
To fix your FOR-loop you just need to keep the indices:
for ii = 1:3; %ii and jj since i,j = sqrt(-1)
for jj = 1:3;
grid(ii,jj) = mean(test(ii,jj,:))
end
end

댓글 수: 1

Donald
Donald 2011년 6월 15일
that's very simple, thanks!
also, thanks for the head's up

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

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Multidimensional Arrays에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by