non zero elements in an array
조회 수: 2 (최근 30일)
이전 댓글 표시
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
채택된 답변
Arif Hoq
2022년 2월 12일
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
추가 답변 (2개)
DGM
2022년 2월 12일
편집: DGM
2022년 2월 12일
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
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!