how velocize operation boolean
조회 수: 2 (최근 30일)
이전 댓글 표시
N = 5
a=[0.3 1 0 3 9]
b=a<N
find(b&(~a))
댓글 수: 0
답변 (2개)
Image Analyst
2023년 9월 6일
That code has nothing to do with your subject line. You want
logicalIndexes = a == 1
% or
linearIndexes = find(a == 1)
Same for b or any other variable.
댓글 수: 5
Walter Roberson
2023년 9월 6일
a=[0.3 1 0 3 9]
n=6
b=a<n
a>0
b
find((a==0)&(~(b==0)))
but with b already being logical, b==0 is the same as ~b, and ~ of that is ~~b which for logical would be the same as b
Image Analyst
2023년 9월 6일
You asked : "(i want to find idx element that change from 0 to 1 )"
So do this:
a = [5, 0, 1, 9, 0, 1];
index = strfind(a, [0, 1]) % Look for where [0, 1] occurs in the vector.
The index is at the start, that is, where the zeros are.
댓글 수: 5
Image Analyst
2023년 9월 6일
(b == 1) will be logical because it's comparing the number to 1. b can be any data type, like double or integer or logical. The result will be true or false values, or 1 and 0 if you convert them to numbers, for example to multiply element-by-element by another numerical vector.
If b is logical than (b) is logical (already). If b is a double vector like [1,2,44,66] then b is not logical -- not true or false values.
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!