connectivity: Clustering Connectivity and Consensus Matrices

connectivityR Documentation

Clustering Connectivity and Consensus Matrices


connectivity is an S4 generic that computes the connectivity matrix based on the clustering of samples obtained from a model's predict method.

The consensus matrix has been proposed by Brunet et al. (2004) to help visualising and measuring the stability of the clusters obtained by NMF approaches. For objects of class NMF (e.g. results of a single NMF run, or NMF models), the consensus matrix reduces to the connectivity matrix.


  connectivity(object, ...)

  ## S4 method for signature 'NMF'
connectivity(object, no.attrib = FALSE)

  consensus(object, ...)



an object with a suitable predict method.


extra arguments to allow extension. They are passed to predict, except for the vector and factor methods.


a logical that indicates if attributes containing information about the NMF model should be attached to the result (TRUE) or not (FALSE).


The connectivity matrix of a given partition of a set of samples (e.g. given as a cluster membership index) is the matrix C containing only 0 or 1 entries such that:

C_{ij} = \left\{\begin{array}{l} 1\mbox{ if sample }i\mbox{ belongs to the same cluster as sample }j\\ 0\mbox{ otherwise} \end{array}\right..


a square matrix of dimension the number of samples in the model, full of 0s or 1s.



signature(object = "ANY"): Default method which computes the connectivity matrix using the result of predict(x, ...) as cluster membership index.


signature(object = "factor"): Computes the connectivity matrix using x as cluster membership index.


signature(object = "numeric"): Equivalent to connectivity(as.factor(x)).


signature(object = "NMF"): Computes the connectivity matrix for an NMF model, for which cluster membership is given by the most contributing basis component in each sample. See predict,NMF-method.


signature(object = "NMFfitX"): Pure virtual method defined to ensure consensus is defined for sub-classes of NMFfitX. It throws an error if called.


signature(object = "NMF"): This method is provided for completeness and is identical to connectivity, and returns the connectivity matrix, which, in the case of a single NMF model, is also the consensus matrix.


signature(object = "NMFfitX1"): The result is the matrix stored in slot ‘consensus’. This method returns NULL if the consensus matrix is empty.

See consensus,NMFfitX1-method for more details.


signature(object = "NMFfitXn"): This method returns NULL on an empty object. The result is a matrix with several attributes attached, that are used by plotting functions such as consensusmap to annotate the plots.

See consensus,NMFfitXn-method for more details.


Brunet J, Tamayo P, Golub TR and Mesirov JP (2004). "Metagenes and molecular pattern discovery using matrix factorization." _Proceedings of the National Academy of Sciences of the United States of America_, *101*(12), pp. 4164-9. ISSN 0027-8424, <URL:>, <URL:>.

See Also



# connectivity,ANY-method
# clustering of random data
h <- hclust(dist(rmatrix(10,20)))
connectivity(cutree(h, 2))

# connectivity,factor-method
connectivity(gl(2, 4))

NMF documentation built on March 31, 2023, 6:55 p.m.