MATLAB Answers

How do I print the common elements in a row vector?

6 views (last 30 days)
Yasmin Touly
Yasmin Touly on 13 Apr 2018
Answered: Stephen Cobeldick on 13 Apr 2018
If I have two-row vectors,
A = [3, 11, 7]
B = [11, 2, 5]
and I have to find the common element, how do I do that?
C = ismember(A, B)
But, using the ismember() function will only give me values in 0 or 1. I want to print out '11', but how do I accomplish that? Do i use the function unique()? any help would be very much appreciated.thank u.

  0 Comments

Sign in to comment.

Answers (2)

David Fletcher
David Fletcher on 13 Apr 2018
Edited: David Fletcher on 13 Apr 2018
use the logical vector to index the common values
common=A(ismember(A,B))
if you have multiple values in A that are the same you will get
A = [3, 11, 7 11 3]
B = [11, 2, 5]
common=A(ismember(A,B)))
common =
11 11
You can use unique to filter the list
common=unique(A(ismember(A,B)))
common =
11

  0 Comments

Sign in to comment.


Stephen Cobeldick
Stephen Cobeldick on 13 Apr 2018
The simplest solution is to use intersect:
>> intersect(A,B)
ans = 11

  0 Comments

Sign in to comment.

Sign in to answer this question.

Tags