如何从我的Matlab代码中消除这个循环?

如何从我的Matlab代码中消除这个循环?,matlab,for-loop,Matlab,For Loop,我的目标是将一个三阶矩阵,简单地(也许只需要一行代码)更改为一个二阶矩阵,有什么想法吗 A = rand(256, 256, 3); B = zeros(256, 256); for i = 1: size(A, 1) for j = 1 : size(A, 2) B(i,j) = max(A(i,j, :)); end end 我想这就是你想要的: B = max(A, [], 3);

我的目标是将一个三阶矩阵,简单地(也许只需要一行代码)更改为一个二阶矩阵,有什么想法吗

A = rand(256, 256, 3);
B = zeros(256, 256);


for i = 1: size(A, 1)
    for j = 1 : size(A, 2)
        B(i,j) = max(A(i,j, :));
    end
end

我想这就是你想要的:

B = max(A, [], 3);