comp.SAM {DEDS}R Documentation

Computing SAM Statistics for Differential Expression


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.


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


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 mesages 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 acorss 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. A logical variable, if TRUE, a plot between the coefficient of variation and the percentile sequence will be made.


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 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.


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%).


Yuanyuan Xiao,,
Jean Yee Hwa Yang,


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



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

# genes 1-10 are differentially expressed

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

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

[Package DEDS version 1.0.3 Index]