compare two arrays of different length ( inequality)

27 Ansichten (letzte 30 Tage)
emar
emar am 1 Jun. 2017
Kommentiert: emar am 1 Jun. 2017
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

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 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 );

Weitere Antworten (1)

MathReallyWorks
MathReallyWorks am 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 Kommentar
emar
emar am 1 Jun. 2017
Bearbeitet: emar am 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) )

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Install Products finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by