


> Date: Thu, 15 Mar 2012 14:00:46 -0700
> Subject: Re: [R] Get Details About Clusters
> From: peter.langfelder@gmail.com
> To: anxusgo@hotmail.com
> CC: r-help@r-project.org
> 
> On Thu, Mar 15, 2012 at 1:48 PM, A J <anxusgo@hotmail.com> wrote:
> >
> > Hi everybody!
> > Anybody knows how can I get detalied information about clusters after using hclust?
> > The issue is that if I have some items in different clusters, I would like to get the cluster where each item is placed.
> > Taking into account that my data set is too large, it is not useful to have the dendogram or a graphic, and really I need something like a simple table with item label and cluster name, for instance.
> > Is it possible to do this in any way in R?
> >
> > I leave a code example from I start:
> >
> > a<-replicate(2000, rnorm(2000))b<-hclust(as.dist(a), method="ward", members=NULL)
> >
> > And this is the information that I achieve:
> >
> > structure(list(merge = structure(c(-6L, -5L, -7L, -3L, -1L, -2L, 3L, 4L, 5L, -10L, -9L, -8L, 1L, -4L, 2L, 6L, 7L, 8L), .Dim = c(9L, 2L)), height = c(-2.16431780288644, -1.77785380974643, -1.72883152083299, -1.02930929735342, -0.957628473035096, -0.687733358846453, 1.62427849392232, 2.78818645913762, 3.01723103257677), order = c(1L, 4L, 3L, 6L, 10L, 7L, 8L, 2L, 5L, 9L), labels = NULL, method = "ward", call = quote(hclust(d = as.dist(a),     method = "ward", members = NULL)), dist.method = NULL), .Names = c("merge", "height", "order", "labels", "method", "call", "dist.method"), class = "hclust")
> >
> > I just need the every item with its correponding cluster in a more or less organizated way. Of course, there is not problem in using different funtcions or librarys (till now I have not found anything sweeting to my needs). Advices or orientations are welcome and appreciated!
> 
> hclust by itself does not generate clusters; rather, it generates a
> clustering tree. You need to identify branches (clusters) in the tree
> using a "branch cutting" method. This typically entails choosing one
> or more parameters that specify how sensitive the cut method should be
> to branch splits.
> 
> You can do that in several ways. Simple tree cut is implemented in the
> function cutree (package stats). You can specify the number of
> clusters or the cut height. More advanced methods are implemented in
> the function cutreeDynamic in the dynamicTreeCut package (shameless
> plug alert - I'm the maintainer). Examples of use and results from the
> dynamicTreeCut package can be seen at
> 
> http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/BranchCutting/
> 
> Our group has used the dynamicTreeCut methods extensively in
> clustering gene expression data.
> 
> HTH,
> 
> Peter


Thanks a lot Peter.

I was not able to see the outputs that cutree give me back. But after your remarks (if I didn't misunderstand), I have become aware that it offers me just the minimal information necessary to reach my goals. It simply provides a "vector" with cluster number of each item (or its label) in a sorted way. This is: item_1-cluster_a ; item_2-cluster_b ; item_3_cluster_c ... item_n-cluster_n. Otherwise, I am very grateful for your comments and advices about cluster dynamicTreeCut package. I need to develop several clustering tests with my data and this package might be really useful.

So, thanks again

Best,

AJ 		 	   		  
	[[alternative HTML version deleted]]

