Comparing two arrays of different length

47 visualizzazioni (ultimi 30 giorni)
Hi,
I have two arrays like, A=[11 11 2 3; 5 2 6 9] and B=[11 3; 2 9]. I want to know the indices of array A where the column of B is equal to column of A. In this case, the indices are [2 4].
How can I do that?
Thanks in Advance.

Risposta accettata

Giorgos Papakonstantinou
Giorgos Papakonstantinou il 17 Nov 2014
You could this to find it:
idx = ismember(A', B', 'rows');
c = 1:size(A, 2);
d = c(idx); % is your answer
  2 Commenti
Josep Llobet
Josep Llobet il 5 Ott 2021
indeed, maybe
ismember(0, unique(idx))
used with 0 (no-coincident) or 1 (coincident), may be useful.
Then combined with
length(unique(idx))
For to know about the totallity of coincidences

Accedi per commentare.

Più risposte (1)

Azzi Abdelmalek
Azzi Abdelmalek il 17 Nov 2014
A=[11 11 2 3; 5 2 6 9]
B=[11 3; 2 9]
idx=find(ismember(A',B','rows'))

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by