How to vectorize the following code snippet ?

M = randi([-10 10],10,10);
[m, n] = size(M);
out = zeros(m, n);
for x = 1:m
for y = 1:n
if M(x, y) > 0
out(x, y) = 1;
else if M(x, y) == 0
out(x, y) = 0;
else
out(x, y)=-1;
end
end
end

 Respuesta aceptada

Star Strider
Star Strider el 15 de Feb. de 2021
That can all be reduced to:
out = zeros(size(M))-1;
out(M>0) = 1;
out(M==0) = 0;
producing the same result.

Más respuestas (0)

Categorías

Más información sobre Simulink Functions en Centro de ayuda y File Exchange.

Productos

Versión

R2020b

Preguntada:

el 15 de Feb. de 2021

Respondida:

el 15 de Feb. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by