Dudoit-class {ClassComparison}R Documentation

Class "Dudoit"

Description

An implementation of the method of Dudoit and colleagues to apply the Westfall-Young adjustment to p-values to control the family-wise error rate when analyzing microarray data.

Usage

Dudoit(data, classes, nPerm=1000, verbose=TRUE)
## S4 method for signature 'Dudoit,missing'
plot(x, y, xlab='T-Statistic', ylab='P-Value', ...)
## S4 method for signature 'Dudoit'
cutoffSignificant(object, alpha, ...)
## S4 method for signature 'Dudoit'
selectSignificant(object, alpha, ...)
## S4 method for signature 'Dudoit'
countSignificant(object, alpha, ...)

Arguments

data

either a data frame or matrix with numeric values, or an ExpressionSet as defined in the BioConductor tools for analyzing microarray data.

classes

If data is a data frame or matrix, then classes must be either a logical vector or a factor. If data is an ExpressionSet, then classes can be a character string that names one of the factor columns in the associated phenoData subobject.

nPerm

integer scalar specifying the number of permutations to perform

verbose

logical scalar. If TRUE, prints additional output

object

object of class Dudoit

alpha

numeric scalar specifying the target family-wise error rate

x

object of class Dudoit

y

Nothing, since it is supposed to be missing. Changes to the Rd processor require documenting the missing entry.

xlab

character string specifying label for the x axis

ylab

character string specifying label for the y axis

...

extra arguments for generic or plotting routines

Details

In 2002, Dudoit and colleagues introduced a method to adjust the p-values when performing gene-by-gene tests for differential expression. The adjustment was based on the method of Westfall and Young, with the goal of controlling the family-wise error rate.

Value

The standard method for plot returns what you would expect.

The cutoffSignificant method returns a real number (its input value alpha). The selectSignificant method returns a vector of logical values identifying the significant test results, and countSignificant returns an integer counting the number of significant test results.

Objects from the Class

As usual, objects can be created by new, but better methods are available in the form of the Dudoit function. The basic inputs to this function are the same as those used for row-by-row statistical tests throughout the ClassComparison package; a detailed description can be found in the MultiTtest class.

The additional input determines the number, nPerm, of permutations to perform. The accuracy of the p-value adjustment depends on this value. Since the implementation is in R (and does not call out to something compiled like C or FORTRAN), however, the computations are slow. The default value of 1000 can take a long time with modern microarrays that contain 40,000 spots.

Slots

adjusted.p:

numeric vector of adjusted p-values.

t.statistics:

Object of class numeric containing the computed t-statistics.

p.values:

Object of class numeric containing the computed p-values.

groups:

Object of class character containing the names of the classes being compared.

call:

Object of class call containing the function call that created the object.

Extends

Class MultiTtest, directly. In particular, objects of this class inherit methods for summary, hist, and plot from the base class.

Methods

cutoffSignificant(object, alpha, ...)

Determine cutoffs on the adjusted p-values at the desired significance level. In other words, this function simply returns alpha.

selectSignificant(object, alpha, ...)

Compute a logical vector for selecting significant test results.

countSignificant(object, alpha, ...)

Count the number of significant test results.

plot

signature(x=Dudoit, y=missing): ...

Author(s)

Kevin R. Coombes krc@silicovore.com

References

Dudoit S, Yang YH, Callow MJ, Speed TP.
Statistical Methods for Identifying Differentially Expressed Genes in Replicated cDNA Microarray Experiments.
Statistica Sinica (2002), 12(1): 111-139.

Westfall PH, Young SS.
Resampling-based multiple testing: examples and methods for p-value adjustment.
Wiley series in probability and mathematics statistics. John Wiley and Sons, 1993.

See Also

Bum, MultiTtest, SmoothTtest

Examples

showClass("Dudoit")
ng <- 10000
ns <- 15
nd <- 200
fake.class <- factor(rep(c('A', 'B'), each=ns))
fake.data <- matrix(rnorm(ng*ns*2), nrow=ng, ncol=2*ns)
fake.data[1:nd, 1:ns] <- fake.data[1:nd, 1:ns] + 2
fake.data[(nd+1):(2*nd), 1:ns] <- fake.data[(nd+1):(2*nd), 1:ns] - 2

# the permutation test is slow. it really needs many more
# than 10 permutations, but this is just an example...
dud <- Dudoit(fake.data, fake.class, nPerm=10)
summary(dud)
plot(dud)
countSignificant(dud, 0.05)

[Package ClassComparison version 3.1.8 Index]