0
给定一个多维数组A = MxMxMx ... xM,其中ndims(A)= n。我的问题可以用下面的伪代码来描述:如何遍历多维数组
tmp = A(i, :, :, :, ..., :)
sum(tmp(:)) i = 1, ... M
tmp = A(:, i, :, :, ..., :)
sum(tmp(:)) i = 1, ... M
...
tmp = A(:, :, :, :, ..., i)
sum(tmp(:)) i = 1, ... M
让我用一个例子来说明它。
C = 1:81;
A = reshape(C, 3, 3, 3, 3);
result = zeros(3, 4);
for i = 1 : 3
tmp = A(i, :, :, :);
result(1, i) = sum(tmp(:));
end
for i = 1 : 3
tmp = A(:, i, :, :);
result(2, i) = sum(tmp(:));
end
for i = 1 : 3
tmp = A(:, :, i, :);
result(3, i) = sum(tmp(:));
end
for i = 1 : 3
tmp = A(:, :, :, i);
result(4, i) = sum(tmp(:));
end
我真的不知道该怎么做。谁能帮我?
感谢
这是不容易理解。你能用一个3x3x3矩阵来说明吗? –
@ RobertP.我补充了一个例子。感谢您的建议。 – Fihop