Hot to find the matched values between two vectors and also related indeces

38 Ansichten (letzte 30 Tage)
Good evening to all,
I have two vectors, for example:
a = [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27]; b= [0 8 17 25];
what I would find are the indices related the vector 'a' with the same value of 'b'...like for example in this case 1 9 18 26.
Thanks in advance.

Akzeptierte Antwort

Juster
Juster am 18 Jun. 2012
Any answer please?
Thanks
  3 Kommentare
Jan
Jan am 18 Jun. 2012
Look for Bruno's "ismemberf" in the FEX.
Juster
Juster am 20 Jun. 2012
Hello Jam, I solved thanks to the 'ismemberf' function.
Best regards.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Andrei Bobrov
Andrei Bobrov am 17 Jun. 2012
[idx,loc] = ismember(b,a);
out = loc(idx);
ADD after Knot's answer
out = find(any(abs(bsxfun(@minus,a,b.')) < eps(100)));

Juster
Juster am 17 Jun. 2012
I tried it but with microsecond order it did'n work.
In fact if you try with :
a = [0:10e-6:280e-6]; b = [0 80e-6 170e-6 250e-6]; [idx,loc] = ismember(b,a); out = loc(idx);
I don't got the right values of indices.

Kategorien

Mehr zu MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by