vst {lumi} | R Documentation

## Variance Stabilizing Transformation

### Description

Stabilizing the expression variance based on the bead level expression variance and mean relations

### Usage

    vst(u, std, nSupport = min(length(u), 500), backgroundStd=NULL, fitMethod = c('linear', 'quadratic'), lowCutoff = 1/3, ifPlot = FALSE)

### Arguments

`u` | mean expression of the beads with same sequence
`std` | expression standard deviation of the beads with same sequence
`nSupport` | the number of down-sampling to speed processing
`backgroundStd` | pre-estimated background standard deviation level
`fitMethod` | methods of fitting the relations between expression variance and mean relations
`lowCutoff` | cutoff ratio to determine the low expression range. Do not change this until you now what you are doing.
`ifPlot` | plot intermediate results or not

### Details

The variance-stabilizing transformation (VST) takes the advantage of larger number of technical replicates available on the Illumina microarray. It models the mean-variance relationship of the within-array technical replicates at the bead level of Illumina microarray. An arcsinh transform is then applied to stabilize the variance. See reference for more details.

For the methods of fitting the relations between expression variance and mean relations, the 'linear' method is more robust and provides detailed parameters for inverseVST.

### Value

Return the transformed (variance stabilized) expression values.

### Author(s)

Pan Du, Simon Lin

### References

Lin, S.M., Du, P., Kibbe, W.A., "Model-based Variance-stabilizing Transformation for Illumina Mi-croarray Data", submitted

### See Also

`lumiT`, `inverseVST`

### Examples

    ## load example data
    data(example.lumi)

    ## get the gene expression mean for one chip
    u <- exprs(example.lumi)[,1]
    ## get the gene standard deviation for one chip
    std <- se.exprs(example.lumi)[,1]

    ## do variance stabilizing transform
    transformedU <- vst(u, std)

    ## do variance stabilizing transform with plotting intermediate result
    transformedU <- vst(u, std, ifPlot=TRUE)

[Package lumi version 2.38.0 Index]