J'ai une matrice qui est remplie d'éléments discrets et je dois les regrouper (en utilisant R) en groupes intacts. Alors, par exemple, prenez cette matrice:
[A B B C A]
[A A B A A]
[A B B C C]
[A A A A A]
Il y aurait deux clusters distincts pour A, deux clusters distincts pour C et un cluster pour B.
La sortie que je recherche attribuerait idéalement un ID unique à chaque cluster, quelque chose comme ceci:
[1 2 2 3 4]
[1 1 2 4 4]
[1 2 2 5 5]
[1 1 1 1 1]
À l'heure actuelle, j'ai écrit un code qui le fait de manière récursive en vérifiant simplement de manière itérative le plus proche voisin, mais il déborde rapidement lorsque la matrice devient grande (c'est-à-dire 100x100).
Y a-t-il une fonction intégrée dans R qui peut le faire? J'ai étudié le raster et le traitement d'image, mais pas de chance. Je suis convaincu que ce doit être là-bas.