Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

silhouette.NMF

Silhouette of NMF Clustering


Description

Silhouette of NMF Clustering

Usage

## S3 method for class 'NMF'
 silhouette(x, what = NULL, order = NULL,
    ...)

Arguments

x

an NMF object, as returned by nmf.

what

defines the type of clustering the computed silhouettes are meant to assess: 'samples' for the clustering of samples (i.e. the columns of the target matrix), 'features' for the clustering of features (i.e. the rows of the target matrix), and 'chc' for the consensus clustering of samples as defined by hierarchical clustering dendrogram, 'consensus' for the consensus clustering of samples, with clustered ordered as in the default hierarchical clustering used by consensusmap when plotting the heatmap of the consensus matrix (for multi-run NMF fits). That is dist = 1 - consensus(x), average linkage and reordering based on row means.

order

integer indexing vector that can be used to force the silhouette order.

...

extra arguments not used.

See Also

Examples

x <- rmatrix(75, 15, dimnames = list(paste0('a', 1:75), letters[1:15]))
# NB: using low value for maxIter for the example purpose only
res <- nmf(x, 4, nrun = 3, maxIter = 20)

# sample clustering from best fit
plot(silhouette(res))

# average silhouette are computed in summary measures
summary(res)

# consensus silhouettes are ordered as on default consensusmap heatmap
## Not run:  op <- par(mfrow = c(1,2)) 
consensusmap(res)
si <- silhouette(res, what = 'consensus')
plot(si)
## Not run:  par(op) 

# if the order is based on some custom numeric weights
## Not run:  op <- par(mfrow = c(1,2)) 
cm <- consensusmap(res, Rowv = runif(ncol(res)))
# NB: use reverse order because silhouettes are plotted top-down
si <- silhouette(res, what = 'consensus', order = rev(cm$rowInd))
plot(si)
## Not run:  par(op) 

# do the reverse: order the heatmap as a set of silhouettes
si <- silhouette(res, what = 'features')
## Not run:  op <- par(mfrow = c(1,2)) 
basismap(res, Rowv = si)
plot(si)
## Not run:  par(op)

NMF

Algorithms and Framework for Nonnegative Matrix Factorization (NMF)

v0.23.0
GPL (>= 2)
Authors
Renaud Gaujoux, Cathal Seoighe
Initial release
2020-07-30

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.