La pregunta se refiere al paquete de cluster
. La página de ayuda para agnes.object
devuelta por agnes
(ver http://stat.ethz.ch/R-manual/R-devel/library/cluster/html/agnes.object.html) indica que este objeto contiene un componente order.lab
"similar a order
, pero que contiene etiquetas de observación en lugar de números de observación. Este componente solo está disponible si las observaciones originales fueron etiquetadas".
La matriz de diferencias (twitter.om
en su caso) producida por TraMineR actualmente no conserva las etiquetas de secuencia como nombres de fila y columna. Para obtener el componente order.lab
, debe asignar manualmente las etiquetas de secuencia como rownames
y colnames
de su matriz twitter.om
. Lo ilustramos aquí con los datos mvad
provistos por el paquete TraMineR.
library(TraMineR)
data(mvad)
## attaching row labels
rownames(mvad) <- paste("seq",rownames(mvad),sep="")
mvad.seq <- seqdef(mvad[17:86])
## computing the dissimilarity matrix
dist.om <- seqdist(mvad.seq, method = "OM", indel = 1, sm = "TRATE")
## assigning row and column labels
rownames(dist.om) <- rownames(mvad)
colnames(dist.om) <- rownames(mvad)
dist.om[1:6,1:6]
## Hierarchical cluster with agnes library(cluster)
cward <- agnes(dist.om, diss = TRUE, method = "ward")
## here we can see that cward has an order.lab component
attributes(cward)
Eso es para conseguir order
con etiquetas de secuencia en lugar de números. Pero ahora no está claro para mí qué resultado del clúster desea en forma de texto/tabla. Desde el dendrograma, usted decide dónde quiere cortarlo, es decir, la cantidad de grupos que desea y corta el dendrograma con cutree
, p. Ej. cl.4 <- cutree(clusterward1, k = 4)
. El resultado cl.4
es un vector con la membresía del clúster para cada secuencia y se obtiene la lista de los miembros del grupo 1, por ejemplo, con rownames(mvad.seq)[cl.4==1]
.
Como alternativa, puede utilizar el método identify
(ver ?identify.hclust
) para seleccionar los grupos de forma interactiva desde la trama, pero necesita para pasar el argumento como as.hclust(cward)
. Aquí está el código para el ejemplo
## plot the dendrogram
plot(cward, which.plot = 2, labels=FALSE)
## and select the groups manually from the plot
x <- identify(as.hclust(cward)) ## Terminate with second mouse button
## number of groups selected
length(x)
## list of members of the first group
x[[1]]
Espero que esto ayude.
¡Muchas gracias! ¡Esto es muy útil! – histelheim