how to make ismember return a logical array
조회 수: 3 (최근 30일)
이전 댓글 표시
Hi there
commonxvalues=ismember(xpoint,points);
commonyvalues=ismember(ypoint,points);
if ismember(commonxvalues,1)==0
points(counter,1)= xpoint;
end
if ismember(commonyvalues,1)==0
points(counter,2)= ypoint;
end
how do I make it so that common values returns a logical array. Otherwise, is there another function on matlab that will return a logical value if two elements in an array are the same, or a function that will return a logical value if ismember returns any positive output, because currently ismember returns a logical output in a 2d array. Cheers
댓글 수: 1
Guillaume
2018년 9월 6일
Your question is not clear. ismember always return a logical array (as its first output), never anything else.
It would be better if you explained clearly what you're trying to achieve. That very odd construct
if ismember(commonxvalues, 1) == 0
could be written more clearly as
if ~commonxvalues
However, note that if commonxvalues is a vector or matrix, then it would be better off written as
if ~any(commonxvalues)
instead of using the often misunderstood behaviour of if when passed an array.
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrices and Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!