The Spectral Bicluster algorithm

Description

Performs Spectral Biclustering as described in Kluger et al., 2003. Spectral biclustering supposes that normalized microarray data matrices have a checkerboard structure that can be discovered by the use of svd decomposition in eigenvectors, applied to genes (rows) and conditions (columns).

Usage

1
2
3
## S4 method for signature 'matrix,BCSpectral'
biclust(x, method=BCSpectral(), normalization="log", numberOfEigenvalues=3, 
            minr=2, minc=2, withinVar=1)

Arguments

x

The data matrix where biclusters are to be found

method

Here BCSpectral, to perform Spectral algorithm

normalization

Normalization method to apply to mat. Three methods are allowed as described by Kluger et al.: "log" (Logarithmic normalization), "irrc" (Independent Rescaling of Rows and Columns) and "bistochastization". If "log" normalization is used, be sure you can apply logarithm to elements in data matrix, if there are values under 1, it automatically will sum to each element in mat (1+abs(min(mat))) Default is "log", as recommended by Kluger et al.

numberOfEigenvalues

the number of eigenValues considered to find biclusters. Each row (gene) eigenVector will be combined with all column (condition) eigenVectors for the first numberOfEigenValues eigenvalues. Note that a high number could increase dramatically time performance. Usually, only the very first eigenvectors are used. With "irrc" and "bistochastization" methods, first eigenvalue contains background (irrelevant) information, so it is ignored.

minr

minimum number of rows that biclusters must have. The algorithm will not consider smaller biclusters.

minc

minimum number of columns that biclusters must have. The algorithm will not consider smaller biclusters.

withinVar

maximum within variation allowed. Since spectral biclustering outputs a checkerboard structure despite of relevance of individual cells, a filtering of only relevant cells is necessary by means of this within variation threshold.

Value

Returns an object of class Biclust.

Author(s)

Rodrigo Santamaria rodri@usal.es

References

Kluger et al., "Spectral Biclustering of Microarray Data: Coclustering Genes and Conditions", Genome Research, 2003, vol. 13, pages 703-716

Examples

1
2
3
4
5
6
  #Random matrix with embedded bicluster  
  test <- matrix(rnorm(5000),100,50)
  test[11:20,11:20] <- rnorm(100,10,0.1)
  res1 <- biclust(test, method=BCSpectral(), numberOfEigenvalues=1)
  res1