Learn R Programming

yaConsensus (version 1.1)

monti: Compute and display the Monti's statistics for class discovery.

Description

The function computes Monti's statistics, and/or displays the correponding plots.

Usage

monti(obj, gMax = nclass.Sturges(obj$labels), just_compute = FALSE)

Value

The same input object of 'yaConsensus' class with a named list in the new 'monti' slot

monti

A named list with the following slots:

x

a sequence of 500 knots from 0 to 1

y

a real matrix of 500 rows and gMax - 1 colums. Each columns stores the values of the empirical distribution function corresponing to the number of clusters from 2 to gMax.

area

a list of real values, each of them corresponing to the area under the empirical distribution function (as stored in y)

Arguments

obj

An object of 'yaConsensus' class

gMax

an integer value indicating the maximum number cluster to be explored

just_compute

A logical value indicating if Monti's statistics have to be just computed (TRUE) or, in addition, displayed (FALSE, default)

Author

Stefano M. Pagnotta

Details

If the 'fname' slot of the input object is instantiated, the input object is updated with the Monti's statistics and saved.

References

Monti et al. (2003) - Consensus Clustering: A Resampling-Based Method for Class Discovery and Visualization of Gene Expression Microarray Data - Machine Learning 52(1-2):91-118 <DOI: 10.1023/A:1023949509487>

See Also

yaConsensus

Examples

Run this code
## Generate data and annotation
n <- 50; m <- 3000
ddata <- matrix(rnorm(n * m), ncol = m)  
ddata[1:20, ] <- ddata[1:20, ] + 0.2
ddata[21:35, ] <- ddata[21:35, ] + 0.4
row.names(ddata) <- c(paste0("A", 1:20), paste0("B", 1:15), paste0("C", 1:15))
ddist <- dist(ddata)

annotation <- data.frame(row.names = rownames(ddata), clust = substr(rownames(ddata), 1, 1))
annotation.colorCode <- c("red", "blue", "green")
names(annotation.colorCode) <- c("A", "B", "C")

####### run in sequential mode
####### sampling the samples ....
aConsensus <- yaConsensus(ddist)
ans <- plot(aConsensus, G = 3, 
            annotation = annotation, 
            annotation.colorCode = annotation.colorCode)
monti(aConsensus)

Run the code above in your browser using DataLab