How to creat an array (k,1) of ordered pairs fro an array (k,2)?

2 vues (au cours des 30 derniers jours)
JazzMusic
JazzMusic le 27 Nov 2016
Commenté : Star Strider le 28 Nov 2016
For example I have: [1 3; 2 4; 2 5; 3 3] and would like to have: [(1,3);(2,4);(2,5);(3,3)]
I actually need to take two arrays (k,2) and count how many pairs are the same. for example if I have: A = [1 3; 2 4; 2 5; 3 5] and B = [2 3; 2 1; 2 4; 3 5] I want the answer to be 2. Since as a sets of 4 ordered pairs (each), the intersection of A and B contains two elements.
Thanks!

Réponse acceptée

Star Strider
Star Strider le 27 Nov 2016
I believe this is what you want:
A = [1 3; 2 4; 2 5; 3 5];
B = [2 3; 2 1; 2 4; 3 5];
[AB,idx] = ismember(A,B,'rows');
Out = sum(AB)
Out =
2
Note If your arrays are not integers, you will need to use the ismembertol function instead.
  2 commentaires
JazzMusic
JazzMusic le 28 Nov 2016
Exactly what I needed. Thanks!!
Star Strider
Star Strider le 28 Nov 2016
My pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by