isa {isa2} | R Documentation |
Run ISA with the default parameters
## S4 method for signature 'matrix': isa(data, ...)
data |
The input. It must be a numeric matrix. It may contain
NA and/or NaN values, but then the algorithm might be a
bit slower, as R matrix multiplication might be slower for these
matrices, depending on your platform. |
... |
Additional arguments, see details below. |
Please read the isa2-package manual page for an introduction on ISA.
This function can be called as
isa(data, thr.row=seq(1,3,by=0.5), thr.col=seq(1,3,by=0.5), no.seeds=100)where the arguments are:
NA
and/or NaN
values, but then the algorithm might be a
bit slower, as R matrix multiplication might be slower for these
matrices, depending on your platform.thr.row
and
thr.col
.thr.row
and thr.col
.
The isa
function provides an easy to use interface to the
ISA. It runs all steps of a typical ISA work flow with their default
parameters.
This involves:
isa.normalize
.
generate.seeds
.
isa.iterate
.
isa.unique
.
isa.filter.robust
.
Please see the manual pages of these functions for the details or if you want to change their default parameters.
A named list is returned with the following elements:
rows |
The row components in the biclusters, a numeric
matrix. Every column in it corresponds to the a bicluster, if an
element (the score of the row) is non-zero, that means that the row
is included in the bicluster, otherwise it is not. Scores are
between -1 and 1. If the scores of two rows have the same (nonzero)
sign, that means that the two corresponding rows “behave” the
same way. If they have opposite sign, that means that they behave
the opposite way.
If the corresponding seed has not converged during the allowed number of iterations, then that column of rows contains
NA values. |
columns |
The column components of the biclusters, in the same
format as the rows.
If the corresponding seed has not converged during the allowed number of iterations, then that column of columns contains
NA values. |
seeddata |
A data frame containing information about the
biclusters. There is one row for each bicluster. The data frame has
the following columns:
|
rundata |
A named list with information about the ISA runs. It
has the following entries:
|
Gabor Csardi Gabor.Csardi@unil.ch
Bergmann S, Ihmels J, Barkai N: Iterative signature algorithm for the analysis of large-scale gene expression data Phys Rev E Stat Nonlin Soft Matter Phys. 2003 Mar;67(3 Pt 1):031902. Epub 2003 Mar 11.
Ihmels J, Friedlander G, Bergmann S, Sarig O, Ziv Y, Barkai N: Revealing modular organization in the yeast transcriptional network Nat Genet. 2002 Aug;31(4):370-7. Epub 2002 Jul 22
Ihmels J, Bergmann S, Barkai N: Defining transcription modules using large-scale gene expression data Bioinformatics 2004 Sep 1;20(13):1993-2003. Epub 2004 Mar 25.
isa2-package for a short introduction on the Iterative Signature Algorithm. See the functions mentioned above if you want to change the default ISA parameters.
## We generate some noisy in-silico data with modules and try to find ## them with the ISA. This might take one or two minutes. data <- isa.in.silico(noise=0.1) isa.result <- isa(data[[1]]) ## Find the best bicluster for each block in the input best <- apply(cor(isa.result$rows, data[[2]]), 2, which.max) ## Check correlation sapply(seq_along(best), function(x) cor(isa.result$rows[,best[x]], data[[2]][,x])) ## The same for the columns sapply(seq_along(best), function(x) cor(isa.result$columns[,best[x]], data[[3]][,x])) ## Plot the data and the modules found if (interactive()) { layout(rbind(1:2,3:4)) image(data[[1]], main="In-silico data") sapply(best, function(b) image(outer(isa.result$rows[,b], isa.result$columns[,b]), main=paste("Module", b))) }