how can I check to see if two different matricies contain any of the same numbers?
2 views (last 30 days)
Show older comments
For example I want to say A=[1 2 3 4 5 6] B=[7 1 8] If any element in matrix A is equal to matrix B then.... I want the statement to be true since 1 is contained in both matrix A and matrix B
0 Comments
Accepted Answer
Azzi Abdelmalek
on 18 Jan 2013
Edited: Azzi Abdelmalek
on 18 Jan 2013
any(ismember(B,A))
3 Comments
Azzi Abdelmalek
on 18 Jan 2013
Sorry, my connection is actually too slow, it took too long to edit my answer. I meant "ismember")
Daniel Shub
on 18 Jan 2013
Well that makes a lot more sense. I think I like ismember better than intersect
More Answers (1)
Daniel Shub
on 18 Jan 2013
What you are interested in is if A and B intersect. The intersect function will tell you which elements are in both A and B or return empty if there are no common elements. You can test if an array is empty with isempty. Since you want to return true if the intersection is not empty (i.e., there is overlap), you need to negate the answer. You can do this with not. Putting it all together gives:
not(isempty(intersect(A, B)))
0 Comments
See Also
Categories
Find more on Logical in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!