Learn R Programming

DEDS (version 1.46.0)

comp.SAM: Computing SAM Statistics for Differential Expression

Description

comp.SAM returns a function of one argument. This function has a environment with bindings for a series of arguments (see below). It accepts a microarray data matrix as its single argument, when evaluated, computes SAM statistics for each row of the matrix.

Usage

comp.SAM(L = NULL, prob = 0.5, B = 200, stat.only = TRUE, verbose = FALSE, deltas, s.step=0.01, alpha.step=0.01, plot.it=FALSE)

Arguments

L
A vector of integers corresponding to observation (column) class labels. For $k$ classes, the labels must be integers between 0 and $k-1$.
prob
A numeric variable used to set the fudge factor $s_0$ in terms of the percentile of the standard deviations of the genes. If set as NULL, $s_0$ is calculated using the algorithm by Tusher et al. (see reference).
B
The number of permutations. For a complete enumeration, B should be 0 (zero) or any number not less than the total number of permutations.
stat.only
A logical variable, if TRUE, only statistics are calculated and returned; if FALSE, false discovery rates (FDRs) for a set of $delta$(deltas) are calculated and returned.
verbose
A logical variable, if TRUE, informative messages are printed during the computation process.
deltas
A vector of values for the threshold $delta$; see Tusher et al.
s.step
A numeric variable specifying the size of the moving window across the gene-wise standard deviations for the selection of the fudge factor $s_0$.
alpha.step
A numeric variable specifying the increment of a percentile sequence between 0 and 1, from which the fudge factor will be chosen to minimize the coefficient of variation of statistics.
plot.it
A logical variable, if TRUE, a plot between the coefficient of variation and the percentile sequence will be made.

Value

SAM returns a function (F) with bindings for a series of arguments. When stat.only=T, the function F when evaluated returns a numeric vector of SAM statistics; When stat.only=F, the function F when evaluated returns a list of the following components:
geneOrder
Order of genes in terms of differential expression;
sam
Sorted SAM statistics;
fdr.table
A matrix with columns: delta, no.significance, no.positive, no.negatvie, FDR(50%), FDR(90%).

Details

The function returned by comp.SAM calculates SAM statistics for each row of the microarray data matrix, with bindings for L, prob, B, stat.only, verbose, deltas, s.step, alpha.step and plot.it. If quantile=NULL, the fudge factor $s_0$ is calculated as the percentile of the gene-wise standard deviations that minimizes the coefficient of variation of the statistics; otherwise $s_0$ is set as the specified percentile of standard deviations. If stat.only=T, only SAM statistics are returned; otherwise, permutation will be carried out to calculate the FDRs for a set of deltas specified and a FDR table will be returned in addition to the SAM statistics.

References

Tusher, V.G., Tibshirani, R., and Chu, G. (2001). Significance analysis of microarrays applied to the ionizing radiation response, PNAS, 98, 5116-5121.

See Also

comp.t

Examples

Run this code
X <- matrix(rnorm(1000,0,0.5), nc=10)
L <- rep(0:1,c(5,5))

# genes 1-10 are differentially expressed
X[1:10,6:10]<-X[1:10,6:10]+1

# two sample test, statistics only
sam.fun <- comp.SAM(L)
sam.X <- sam.fun(X)

# two sample test, FDR
sam.fun <- comp.SAM(L, stat.only=FALSE, delta=c(0.1, 0.2, 0.5))
sam.X <- sam.fun(X)

Run the code above in your browser using DataLab