Printing in matrix form

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!

 Akzeptierte Antwort

Sean de Wolski
Sean de Wolski am 15 Jun. 2011

1 Stimme

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 Kommentar

Donald
Donald am 15 Jun. 2011
that's very simple, thanks!
also, thanks for the head's up

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by