mainvarsetnorm

Perform rank invariant set normalization on gene expression values from two experimental conditions or phenotypes

Syntax

NormDataY = mainvarsetnorm(DataX, DataY)

NormDataY = mainvarsetnorm(..., 'Thresholds', ThresholdsValue, ...)
NormDataY = mainvarsetnorm(..., 'Exclude', ExcludeValue, ...)
NormDataY = mainvarsetnorm(..., 'Prctile', PrctileValue, ...)
NormDataY = mainvarsetnorm(..., 'Iterate', IterateValue, ...)
NormDataY = mainvarsetnorm(..., 'Method', MethodValue, ...)
NormDataY = mainvarsetnorm(..., 'Span', SpanValue, ...)
NormDataY = mainvarsetnorm(..., 'Showplot', ShowplotValue, ...)

Arguments

DataX

Vector of gene expression values from a single experimental condition or phenotype, where each row corresponds to a gene. These data points are used as the baseline.

DataY

Vector of gene expression values from a single experimental condition or phenotype, where each row corresponds to a gene. These data points will be normalized using the baseline.

ThresholdsValue

Property to set the thresholds for the lowest average rank and the highest average rank, which are used to determine the invariant set. The rank invariant set is a set of data points whose proportional rank difference is smaller than a given threshold. The threshold for each data point is determined by interpolating between the threshold for the lowest average rank and the threshold for the highest average rank. Select these two thresholds empirically to limit the spread of the invariant set, but allow enough data points to determine the normalization relationship.

ThresholdsValue is a 1-by-2 vector [LT, HT], where LT is the threshold for the lowest average rank and HT is threshold for the highest average rank. Values must be between 0 and 1. Default is [0.03, 0.07].

ExcludeValue

Property to filter the invariant set of data points, by excluding the data points whose average rank (between DataX and DataY) is in the highest N ranked averages or lowest N ranked averages.

PrctileValue

Property to stop the iteration process when the number of data points in the invariant set reaches N percent of the total number of input data points. Default is 1.

    Note   If you do not use this property, the iteration process continues until no more data points are eliminated.

IterateValue

Property to control the iteration process for determining the invariant set of data points. Enter true to repeat the process until either no more data points are eliminated, or a predetermined percentage of data points (StopPrctileValue) is reached. Enter false to perform only one iteration of the process. Default is true.

    Tip   Select false for smaller data sets, typically less than 200 data points.

MethodValue

Property to select the smoothing method used to normalize the data. Enter 'lowess' or 'runmedian'. Default is 'lowess'.

SpanValue

Property to set the window size for the smoothing method. If SpanValue is less than 1, the window size is that percentage of the number of data points. If SpanValue is equal to or greater than 1, the window size is of size SpanValue. Default is 0.05, which corresponds to a window size equal to 5% of the total number of data points in the invariant set.

ShowplotValue

Property to control the plotting of a pair of M-A scatter plots (before and after normalization). M is the ratio between DataX and DataY. A is the average of DataX and DataY. Enter true to create the pair of M-A scatter plots. Default is false.

Description

NormDataY = mainvarsetnorm(DataX, DataY) normalizes the values in DataY, a vector of gene expression values, to a reference vector, DataX, using the invariant set method. NormDataY is a vector of normalized gene expression values from DataY.

Specifically, mainvarsetnorm:

NormDataY = mainvarsetnorm(..., 'PropertyName', PropertyValue, ...) defines optional properties that use property name/value pairs in any order. These property name/value pairs are as follows:


NormDataY = mainvarsetnorm(..., 'Thresholds', ThresholdsValue, ...)
sets the thresholds for the lowest average rank and the highest average rank, which are used to determine the invariant set. The rank invariant set is a set of data points whose proportional rank difference is smaller than a given threshold. The threshold for each data point is determined by interpolating between the threshold for the lowest average rank and the threshold for the highest average rank. Select these two thresholds empirically to limit the spread of the invariant set, but allow enough data points to determine the normalization relationship.

ThresholdsValue is a 1-by-2 vector [LT, HT], where LT is the threshold for the lowest average rank and HT is threshold for the highest average rank. Values must be between 0 and 1. Default is [0.03, 0.07].

NormDataY = mainvarsetnorm(..., 'Exclude', ExcludeValue, ...) filters the invariant set of data points, by excluding the data points whose average rank (between DataX and DataY) is in the highest N ranked averages or lowest N ranked averages.

NormDataY = mainvarsetnorm(..., 'Prctile', PrctileValue, ...) stops the iteration process when the number of data points in the invariant set reaches N percent of the total number of input data points. Default is 1.

NormDataY = mainvarsetnorm(..., 'Iterate', IterateValue, ...) controls the iteration process for determining the invariant set of data points. When IterateValue is true, mainvarsetnorm repeats the process until either no more data points are eliminated, or a predetermined percentage of data points (PrctileValue) is reached. When IterateValue is false, performs only one iteration of the process. Default is true.

NormDataY = mainvarsetnorm(..., 'Method', MethodValue, ...) selects the smoothing method for normalizing the data. When MethodValue is 'lowess', mainvarsetnorm uses the lowess method. When MethodValue is 'runmedian', mainvarsetnorm uses the running median method. Default is 'lowess'.

NormDataY = mainvarsetnorm(..., 'Span', SpanValue, ...) sets the window size for the smoothing method. If SpanValue is less than 1, the window size is that percentage of the number of data points. If SpanValue is equal to or greater than 1, the window size is of size SpanValue. Default is 0.05, which corresponds to a window size equal to 5% of the total number of data points in the invariant set.

NormDataY = mainvarsetnorm(..., 'Showplot', ShowplotValue, ...) determines whether to plot a pair of M-A scatter plots (before and after normalization). M is the ratio between DataX and DataY. A is the average of DataX and DataY. When ShowplotValue is true, mainvarsetnorm plots the M-A scatter plots. Default is false.

The following example illustrates how mainvarsetnorm can correct for dye bias or scanning differences between two channels of data from a two-color microarray experiment. Under perfect experimental conditions, data points with equal expression values would fall along the M = 0 line, which represents a gene expression ratio of 1. However, dye bias caused the measured values in one channel to be higher than the other channel, as seen in the Before Normalization plot. Normalization corrected the variance, as seen in the After Normalization plot.

Examples

The following example extracts data from a GPR file and creates two column vectors of gene expression values from different experimental conditions. It then normalizes one of the data sets.

maStruct = gprread('mouse_a1wt.gpr');
cy3data = magetfield(maStruct, 'F635 Median');
cy5data = magetfield(maStruct, 'F532 Median');
Normcy5data = mainvarsetnorm(cy3data, cy5data);

References

[1] Tseng, G.C., Oh, Min-Kyu, Rohlin, L., Liao, J.C., and Wong, W.H. (2001) Issues in cDNA microarray analysis: quality filtering, channel normalization, models of variations and assessment of gene effects. Nucleic Acids Research. 29, 2549-2557.

[2] Hoffmann, R., Seidl, T., and Dugas, M. (2002) Profound effect of normalization on detection of differentially expressed genes in oligonucleotide microarray data analysis. Genome Biology. 3(7): research 0033.1-0033.11.

See Also

affyinvarsetnorm, malowess, manorm, quantilenorm

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS