Clear Filters
Clear Filters

compare two arrays of different length ( inequality)

15 views (last 30 days)
Hello, I have two arrays with different length, for example A =[ 2 3 11 0 8 ] and B=[ 2 6 8] ( The data are bigger in the real case) and I want to compare them and find elements that verify abs(A(i)-B(j))> 2 .
Is there any fast function that do that (such ismember but for inequalities) ?
Thanks in advance

Accepted Answer

Walter Roberson
Walter Roberson on 1 Jun 2017
R2016b and later syntax:
[i, j] = find( abs(A.' - B) > 2 );
Earlier releases:
[i, j] = find( abs(bsxfun(@minus, A.', B)) > 2 );

More Answers (1)

MathReallyWorks
MathReallyWorks on 1 Jun 2017
Hello Elkhanssaa Marsali,
Firstly, make the length of A and B equal by adding extra zeros to the array who is shorter.
After you get the length of both array equal, try this code:
A=[2 3 11 0 8]
B=[2 6 8 0 0]
C=abs(A(:)-B(:))>2
You will get proper answer in terms of 1 and 0. Here, 1 means true and 0 means false
  1 Comment
emar
emar on 1 Jun 2017
Edited: emar on 1 Jun 2017
Thank you for your answer. But the problem is that I want to verify the inequality for each element of A with all the elements of B ( so they will be 15 results ( true and false results) )

Sign in to comment.

Categories

Find more on Install Products in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!