ISA {eisa} | R Documentation

## Iterative Signature Algorithm on Gene Expression data

### Description

Run ISA on an ExpressionSet with the default parameters.

### Usage

    ISA (data, flist = filterfun(function(x) IQR(x) > 0.5),
        uniqueEntrez = TRUE, thr.gene = seq(2, 4, by = 0.5),
        thr.cond = seq(1, 3, by = 0.5), no.seeds = 100)

### Arguments

`data` | The input, an ExpressionSet object.
`flist` | A ‘list’ of filter functions to apply to the array. This is passed to the `genefilter` function without touching it. Supply `NA` here if you don't want to filter the expression set before running ISA on it.
`uniqueEntrez` | Logical scalar, whether to filter the input expression set to keep exactly one probeset for each Entrez gene. Probesets that are not mapped to an Entrez gene are dropped.
`thr.gene` | Numeric vector. The threshold parameters for the ISA, for features (=probesets or genes). All combinations of `thr.gene` and `thr.cond` will be used to run ISA.
`thr.cond` | Numeric vector. The threshold parameters for the ISA, for samples. All combinations of `thr.gene` and `thr.cond` will be used to run ISA.
`no.seeds` | Number of seeds to run ISA from.

### Details

Please read tutorial vignette included in this package for an introduction on ISA. The `isa2-package` manual page in the `isa2` package is also useful.

The `ISA` function performs the ISA algorithm on the supplied expression data. This involves the following steps:

1. Filtering the features (i.e. probe sets) according to their variance. You will need the `genefilter` package for this. The default filtering function keeps the features that have an `IQR` of 0.5 or more. See `genefilter` for details on how to create filtering functions. If `NA` is given as the `flist` argument, then no filtering is performed.

2. Filtering the features by mapping them to Entrez genes. Features that do not map to Entrez genes are removed from the data set. If more features map to the same Entrez gene, then only the one with the highest variance will be kept.

3. Calling the `isa` function in the `isa2` package to perform the Iterative Signature Algorithm. This itself performs the following steps:

   1. Normalizing the data by calling `isa.normalize`.

   2. Generating random input seeds via `generate.seeds`.

   3. Running ISA with all combinations of given feature and sample thresholds, by calling `isa.iterate`.

   4. Merging similar modules, separately for each threshold combination, by calling `isa.unique`.

   5. Filtering the modules separately for each threshold combination, by calling `isa.filter.robust` in the `isa2` package.

   6. Putting all modules from the runs with different thresholds into a single object.

   7. Merging similar modules, across all threshold combinations, if two modules are similar, then the one with the milder thresholds is kept.

4. Creates an `ISAModules` object from the ISA results.

### Value

An `ISAModules-class` object.

### Author(s)

Gabor Csardi csardi.gabor@gmail.com

### References

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.

### See Also

The vignette included in the `eisa` package.

### Examples

    library(ALL)
    data(ALL)
    modules <- ISA(ALL, thr.gene=2.7, thr.cond=1.4)
    modules

[Package eisa version 1.36.0 Index]