Ho un set di dati molto grande con due colonne di interesse: Nome e Cugino.
Ogni riga ha un nome univoco e ogni nome ha un cugino.
I dati sono reciprocamente inclusivi, quindi il nome del cugino apparirà anche come un'altra riga nei dati.
L'effetto è quindi un grande set di dati con molti nomi di persone collegate tra loro.
Le relazioni, tuttavia, si formano in gruppi separati. Questi sono gruppi che non hanno alcuna relazione con nessuna persona in nessun altro gruppo.
E.g (usando - > per indicare una relazione)
A- > C- > E- > G = Gruppo 1
B- > D- > F- > H = Group 2
Nessuna delle persone nel Gruppo 1 condivide una relazione con una persona del Gruppo 2.
Quindi, sto cercando un approccio per trovare questi gruppi di persone correlate usando solo i loro nomi e relazioni. Questo potrebbe essere uno pseudo-codice o un approccio concettuale, qualsiasi cosa che mi indichi la strada giusta.
Set di dati di esempio:
Name Cousin
A C
B D
C E
D F
E G
F H
G E
H K
I M
K H
M I
Questi dati saranno aggregati in tre gruppi: Gruppo 1 (A, C, E, G); Gruppo 2 (B, D, F, H, K); Gruppo 3 (I, M).