makeDendrogram: Make hierarchy of set of clusters

makeDendrogramR Documentation

Make hierarchy of set of clusters

Description

Makes a dendrogram of a set of clusters based on hclust on the medoids of the cluster.

Usage

## S4 method for signature 'ClusterExperiment'
makeDendrogram(
  x,
  whichCluster = "primaryCluster",
  reduceMethod = "mad",
  nDims = defaultNDims(x, reduceMethod),
  filterIgnoresUnassigned = TRUE,
  unassignedSamples = c("outgroup", "cluster"),
  whichAssay = 1,
  ...
)

## S4 method for signature 'dist'
makeDendrogram(
  x,
  cluster,
  unassignedSamples = c("outgroup", "cluster", "remove"),
  calculateSample = TRUE,
  ...
)

## S4 method for signature 'matrixOrHDF5'
makeDendrogram(
  x,
  cluster,
  unassignedSamples = c("outgroup", "cluster", "remove"),
  calculateSample = TRUE,
  ...
)

Arguments

x

data to define the medoids from. Matrix and ClusterExperiment supported.

whichCluster

argument that can be a single numeric or character value indicating the single clustering to be used. Giving values that result in more than one clustering will result in an error. See details of getClusterIndex.

reduceMethod

character A character identifying what type of dimensionality reduction to perform before clustering. Can be either a value stored in either of reducedDims or filterStats slot or a built-in diminsionality reduction/filtering. The option "coCluster" will use the co-Clustering matrix stored in the 'coClustering' slot of the ClusterExperiment object

nDims

The number of dimensions to keep from reduceMethod. If missing calls defaultNDims.

filterIgnoresUnassigned

logical. Whether filtering statistics should ignore the unassigned samples within the clustering. Only relevant if 'reduceMethod' matches one of built-in filtering statistics in listBuiltInFilterStats(), in which case the clustering identified in whichCluster is passed to makeFilterStats and the unassigned samples are excluded in calculating the statistic. See makeFilterStats for more details.

unassignedSamples

how to handle unassigned samples("-1") ; only relevant for sample clustering. See details.

whichAssay

numeric or character specifying which assay to use. See assay for details.

...

for makeDendrogram, if signature matrix, arguments passed to hclust; if signature ClusterExperiment passed to the method for signature matrix. For plotDendrogram, passed to plot.dendrogram.

cluster

A numeric vector with cluster assignments. If x is a ClusterExperiment object, cluster is automatically the primaryCluster(x). “-1” indicates the sample was not assigned to a cluster.

calculateSample

only relevant for matrix or dist version of function. Indicates whether to calculate the sample dendrogram.

Details

The function returns two dendrograms (as a list if x is a matrix or in the appropriate slots if x is ClusterExperiment). The cluster dendrogram is created by applying hclust to the medoids of each cluster. In the sample dendrogram the clusters are again clustered, but now the samples are also part of the resulting dendrogram. This is done by giving each sample the value of the medoid of its cluster.

The argument unassignedSamples governs what is done with unassigned samples (defined by a -1 cluster value). If unassigned=="cluster", then the dendrogram is created by hclust of the expanded medoid data plus the original unclustered observations. If unassignedSamples is "outgroup", then all unassigned samples are put as an outgroup. If the x object is a matrix, then unassignedSamples can also be "remove", to indicate that samples with "-1" should be discarded. This is not a permitted option, however, when x is a ClusterExperiment object, because it would return a dendrogram with less samples than NCOL(x), which is not permitted for the @dendro_samples slot.

If any merge information is stored in the input object, it will be erased by a call to makeDendrogram.

Value

If x is a matrix, a list with two dendrograms, one in which the leaves are clusters and one in which the leaves are samples. If x is a ClusterExperiment object, the dendrograms are saved in the appropriate slots.

See Also

makeFilterStats, makeReducedDims

Examples

data(simData)

#create a clustering, for 8 clusters (truth was 3)
cl <- clusterSingle(simData, subsample=FALSE,
sequential=FALSE, mainClusterArgs=list(clusterFunction="pam", clusterArgs=list(k=8)))

#create dendrogram of clusters:
hcl <- makeDendrogram(cl)
plotDendrogram(hcl)
plotDendrogram(hcl, leafType="samples",plotType="colorblock")


epurdom/clusterExperiment documentation built on April 23, 2024, 9:09 p.m.