non zero elements in an array
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
ali hassan
am 12 Feb. 2022
Bearbeitet: Matt J
am 13 Feb. 2022
if a=[1 2 4 5 3 0 0 8 0]
how can i make the elements greater than or equal to 2 as 1 and smaller than two as 0.
so that it become like this:
[0 1 1 1 1 0 0 1 0]
0 Kommentare
Akzeptierte Antwort
Arif Hoq
am 12 Feb. 2022
a=[1 2 4 5 3 0 0 8 0];
[idx]=find(a<2);
a(idx)=0;
out=a;
[idx2]=find(out>=2);
out(idx2)=1
5 Kommentare
Weitere Antworten (2)
DGM
am 12 Feb. 2022
Bearbeitet: DGM
am 12 Feb. 2022
I'm going to assume you're only dealing in integers here, otherwise the question arises whether values between 1 and 2 should really be preserved.
a = [1.5 1 2 4 5 3 0 0 8 0];
b = max(min(a,1),0)
If values between 1 and 2 should be preserved, then:
c = max(a,0);
c(c>=2) = 1
0 Kommentare
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!