cutreeDynamic {dynamicTreeCut}R Documentation

Adaptive branch pruning of hierarchical clustering dendrograms.

Description

This wrapper provides a common access point for two methods of adaptive branch pruning of hierarchical clustering dendrograms.

Usage

cutreeDynamic(dendro, cutHeight = NULL, minClusterSize = 20, method = "hybrid",
              distM = NULL,
              deepSplit = (ifelse(method=="hybrid", 1, FALSE)),
              maxCoreScatter = NULL, minGap = NULL,
              maxAbsCoreScatter = NULL, minAbsGap = NULL,
              pamStage = TRUE, pamRespectsDendro = TRUE,
              useMedoids = FALSE, maxDistToLabel = cutHeight,
              respectSmallClusters = TRUE, 
              verbose = 2, indent = 0)

Arguments

dendro A hierarchical clustering dendorgram such as one returned by hclust.
cutHeight Maximum joining heights that will be considered. For method=="tree" it defaults to 0.99. For method=="hybrid" it defaults to 99 percentile and the maximum of the joining heights on the dendrogram.
minClusterSize Minimum cluster size.
method Chooses the method to use. Recognized values are "hybrid" and "tree".
distM Only used for method "hybrid". The distance matrix used as input to hclust. If not given and method == "hybrid", the function will issue a warning and default to method = "tree".
deepSplit For method "hybrid", can be either logical or integer in the range 0 to 4. For method "tree", must be logical. In both cases, provides a rough control over sensitivity to cluster splitting. The higher the value (or if TRUE), the more and smaller clusters will be produced. For the "hybrid" method, a finer control can be achieved via maxCoreScatter and minGap below.
maxCoreScatter Only used for method "hybrid". Maximum scatter of the core for a branch to be a cluster, given as the fraction of cutHeight relative to the 5th percentile of joining heights. See Details.
minGap Only used for method "hybrid". Minimum cluster gap given as the fraction of the difference between cutHeight and the 5th percentile of joining heights.
maxAbsCoreScatter Only used for method "hybrid". Maximum scatter of the core for a branch to be a cluster given as absolute heights. If given, overrides maxCoreScatter.
minAbsGap Only used for method "hybrid". Minimum cluster gap given as absolute height difference. If given, overrides minGap.
pamStage Only used for method "hybrid". If TRUE, the second (PAM-like) stage will be performed.
pamRespectsDendro Logical, only used for method "hybrid". If TRUE, the PAM stage will respect the dendrogram in the sense that objects and small clusters will only be assigned to clusters that belong to the same branch that the objects or small clusters being assigned belong to.
useMedoids Only used for method "hybrid" and only if labelUnlabeled==TRUE. If TRUE, the second stage will be use object to medoid distance; if FALSE, it will use average object to cluster distance. The default (FALSE) is recommended.
maxDistToLabel Only used for method "hybrid" and only if labelUnlabeled==TRUE. Maximum object distance to closest cluster that will result in the object assigned to that cluster.
respectSmallClusters Only used for method "hybrid" and only if labelUnlabeled==TRUE. If TRUE, branches that failed to be clusters in stage 1 only because of insufficient size will be assigned together in stage 2. If FALSE, all objects will be assigned individually.
verbose Controls the verbosity of the output. 0 will make the function completely quiet, values up to 4 gradually increase verbosity.
indent Controls indentation of printed messages (see verbose above). Each unit adds two spaces before printed messages; useful when several functions' output is to be nested.

Details

This is a wrapper for two related but different methods for cluster detection in hierarchical clustering dendrograms.

In order to make the shape parameters maxCoreScatter and minGap more universal, their values are interpreted relative to cutHeight and the 5th percetile of the merging heights (we arbitrarily chose the 5th percetile rather than the minimum for reasons of stability). Thus, the absolute maximum allowable core scatter is calculated as maxCoreScatter * (cutHeight - refHeight) + refHeight and the absolute minimum allowable gap as minGap * (cutHeight - refHeight), where refHeight is the 5th percentile of the merging heights.

Value

A vector of numerical labels giving assignment of objects to modules. Unassigned objects are labeled 0, the largest module has label 1, next largest 2 etc.

Author(s)

Peter Langfelder, Peter.Langfelder@gmail.com

References

Langfelder P, Zhang B, Horvath S, 2007. http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/BranchCutting

See Also

hclust, cutreeHybrid, cutreeDynamicTree.


[Package dynamicTreeCut version 1.20 Index]