NA dans le regroupement des fonctions (kmeans, pam, clara). Comment associer les clusters de données d'origine?
J'ai besoin de regrouper les données, et j'ai essayé kmeans
, pam
, et clara
avec R.
Le problème est que mes données sont dans une colonne d'un bloc de données, et contient NAs.
J'ai utilisé na.omit()
pour obtenir mon clusters. Mais alors, comment puis-je associer avec les données d'origine? Les fonctions de retour d'un vecteur d'entiers sans le NAs et ils n'ont pas de conserver toutes les informations au sujet de la position d'origine.
Est-il un moyen astucieux pour associer les clusters à l'origine des observations dans le bloc de données? (ou une intelligence effectuer clustering lorsqu'NAs sont présents?)
Grâce
avez-vous nommé votre lignes? je pense que kmeans et pam (au moins) garder la ligne noms, n'est-ce pas?
j'ai essayé, mais non :/
- Je faire de cette façon: kmeans(na.omettre(x), k)
Le cluster des vecteurs (par exemple,
j'ai essayé, mais non :/
- Je faire de cette façon: kmeans(na.omettre(x), k)
Le cluster des vecteurs (par exemple,
clus$cluster
) correspond à la non-NA
éléments de x
. Si les indices de x
que les éléments de clus$cluster
correspondent sont which(!is.na(x))
.OriginalL'auteur Bakaburg | 2014-12-18
Vous devez vous connecter pour publier un commentaire.
La sortie de
kmeans
correspond aux éléments de l'objet passé en argumentx
. Dans votre cas, vous omettez leNA
éléments, et ainsi de$cluster
indique le cluster que chaque élément dena.omit(x)
appartient.Voici un exemple simple:
Et dans le graphique ci-dessous, la couleur indique le cluster que chaque point appartient à.
OriginalL'auteur jbaums
Ce code fonctionne pour moi, à commencer par une matrice contenant une rangée de NAs:
OriginalL'auteur agenis