normalize.AffyBatch.vsn {vsn} | R Documentation

## Wrapper for vsn to be used as a normalization method in the package affy

### Description

Wrapper for `vsn` to be used as a normalization method in the package affy

### Usage

    normalize.AffyBatch.vsn(abatch, subsample=20000, niter = 4, ...)

### Arguments

`abatch` | An object of type `AffyBatch`.
`subsample` | The number of probes to be sampled for the fit of the transformation parameters.
`niter` | Parameter passed on to `vsn`.
`...` | Further parameters for `vsn`.

### Details

Please refer to the "details" and "references" sections of the man page for `vsn` for more details about this method.

Important note: after calling `vsn`, the function `normalize.AffyBatch.vsn` exponentiates the data. This is done in order to make the behavior of this function similar to the other normalization methods in affy. There, it is assumed that in subsequent analysis steps (e.g. in `medianpolish`), the logarithm to base 2 needs to be taken.

### Value

An object of class `AffyBatch`.

### Author(s)

Wolfgang Huber mailto:w.huber@dkfz.de

### See Also

`vsn`

### Examples

    library(affy)
    library(affydata)
    data(Dilution)

    ## let affy know about vsn
    normalize.AffyBatch.methods <- c(normalize.AffyBatch.methods, "vsn")

    es1 = expresso(Dilution[1:2],
                   bg.correct       = FALSE,   ## bg correction is done by vsn
                   normalize.method = "vsn",
                   pmcorrect.method = "pmonly",
                   summary.method   = "medianpolish")

    es2 = expresso(Dilution[1:2],
                   bgcorrect.method = "rma",
                   normalize.method = "quantiles",
                   pmcorrect.method = "pmonly",
                   summary.method   = "medianpolish")

    ## graphics output
    if(interactive()) x11()
    oldpar = par(mfrow=c(2,2), pch=".")

    ## extract expression values
    x1 = exprs(es1)
    x2 = exprs(es2)

    ## scatter plot
    plot(x1, main="vsn: chip 3 vs 4")
    plot(x2, main="rma: chip 3 vs 4")

    ## rank(mean) - difference plot
    ylim = c(-0.7, 0.7)
    plot(rank(rowSums(x1)), diff(t(x1)), ylim=ylim, main="rank(mean) vs differences")
    abline(h=0, col="red")

    plot(rank(rowSums(x2)), diff(t(x2)), ylim=ylim, main="rank(mean) vs differences")
    abline(h=0, col="red")

    ## reset old plotting parameters
    par(oldpar)

[Package Contents]