globaltest {globaltest}R Documentation

Global Test


In microarray data, tests a (list of) group(s) of genes for significant association with a given clinical variable.


globaltest(X, Y, test.genes, model,
    levels, d, event = 1, adjust, ...) 


X Either a matrix of gene expression data, where columns correspond to samples and rows to genes or a Bioconductor exprSet. The data should be properly normalized beforehand (and log- or otherwise transformed), but missing values are allowed (coded as NA). Gene and sample names can be included as the row and column names of X.
Y A vector with the clinical outcome of interest, having one value for each sample. If X is an exprSet it can also be the name of a covariate in the phenoData slot of the exprSet, or a formula object using these names. If the clinical outcome is survival, Y should contain the survival times.
test.genes Either a vector or a list of vectors. Indicates the group(s) of genes to be tested. Each vector in test.genes can be given in three formats. Either it can be a vector with 1 (TRUE) or 0 (FALSE) for each gene in X, with 1 indicating that the gene belongs to the group. Or it can be a vector containing the column numbers (in X) of the genes belonging to the group. Or it can be a subset of the rownames or geneNames for X.
model Globaltest will try to determine the correct model from the input of Y and d. To override the automatic choice, use model = "logistic" for a two-valued outcome Y , model = "linear" for a continuous outcome and model = "survival" for a survival outcome.
levels If Y is a factor (or a category in the PhenoData slot of X) and contains more than 2 levels: levels is a vector of levels of Y to test. If levels is length 2: test these 2 groups against each other. If levels is length 1: test that level against the others.
d A vector or the name of a covariate in the phenoData slot of the exprSet X, to indicate which samples experienced an event. Providing a value for d automatically sets model = "survival"
event The value or values of d that indicates that there was an event.
adjust Confounders or risk factors for which the test must be adjusted. Must be either a data frame or (if X is an exprSet) the names of covariates in the phenoData slot X or a formula object using these names. Default: no adjustment.
... Captures deprecated input for compatibility with older versions of globaltest.


The Global Test tests whether a group of genes (of any size from one single gene to all genes on the array) is significantly associated with a clinical variable. The group could be for example a known pathway, an area on the genome or the set of all genes. The test investigates whether samples with similar clinical outcomes tend to have similar gene expression patterns. For a significant result it is not necessary that the genes in the group have similar expression patterns, only that many of them are correlated with the outcome.


The function returns an object of class gt.result.


1. The options globaltest options sampling and permutation have been replaced by separate functions from version 3.0. See sampling and permutations.

2. The scaling of the test statistic Q is arbitrary and does not influence the test result. The scaling used in the software slightly different from the unscaled version presented in the paper. The mechanism of the rescaling is as follows: Remember that Q is a average of a Qi for all genes i in the tested geneset, so EQ is the average of the EQi. The rescaling is such that the EQ for the pathway of all genes (i.e. the mean of all EQi) is 10.


Jelle Goeman:; Jan Oosting


J. J. Goeman, S. A. van de Geer, F. de Kort and J. C. van Houwelingen, 2004, A global test for groups of genes: testing association with a clinical outcome, Bioinformatics 20 (1) 93–99. See also the vignette Globaltest.pdf included with this package.

See Also

geneplot, sampleplot, sampling, permutations, checkerboard, regressionplot.


    data(exampleX)      # Expression data (40 samples; 1000 genes)
    data(exampleY)      # Clinical outcome for the 40 samples
    pathway1 <- 1:25    # A pathway contains genes 1 to 25
    pathway2 <- 26:50   # another pathway
    gt <- globaltest(exampleX, exampleY, list(pathway1,pathway2))

[Package globaltest version 3.2.0 Index]