How do I Vectorize the for loop containing if else ?

for j=1:n
for i=1:m
if xH(i,j)>0
X1(i,j)=xH(i,j);
X2(i,j)=xH(i,j);
end
end
end
for j=1:n
COUNTcol=0;
for i=1:m
if X1(i,j)>0
COUNTcol=COUNTcol+1;
end
end

 Akzeptierte Antwort

Voss
Voss am 27 Dez. 2022
X1 = zeros(size(xH));
X2 = zeros(size(xH));
idx = xH > 0;
X1(idx) = xH(idx);
X2(idx) = xH(idx);
COUNTcol = sum(X1 > 0, 1);

2 Kommentare

mezali zineb
mezali zineb am 28 Dez. 2022
Verschoben: Voss am 28 Dez. 2022
Thank you so much.
Voss
Voss am 28 Dez. 2022
Bearbeitet: Voss am 29 Dez. 2022
You're welcome!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu MATLAB finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 27 Dez. 2022

Bearbeitet:

am 29 Dez. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by