Learn R Programming

safe (version 3.12.0)

safeplot: SAFE plot

Description

A SAFE plot for a given category displays the empirical distribution function for the ranked (or unranked) local statistics of a given category.

Usage

safeplot(safe = NULL, cat.name = "", limits = NULL, c.vec = NULL, local.stats = NULL, gene.names = NULL, rank = TRUE, x.limits = NULL, c.thresh = 0, colors = NULL, x.ticks = NULL, t.cex = 1, p.val = NULL, cat.desc = NULL, title = "", ...)

Arguments

safe
Object of class SAFE
cat.name
Name of the category to be plotted. If omitted, the most significant category is plotted.
limits
Limits of the shaded region in the plot on the unranked scale
c.vec
Logical vector specifying membership to a gene category
local.stats
Numeric vector of local statistics
gene.names
Optional character vector to replace names(local.stats) in labels
rank
Logical to plotted raned (TRUE) or unranked (FALSE) local statistics on the x-axis
x.limits
Optional limits of the x-axis. By default will be range(local.stats)
c.thresh
Optional threshold for plotting tickmarks for a weighted (``soft'') gene category
colors
Optional vector specificy colors for gene labels
x.ticks
Optional location of x-axis tick marks on the ranked scale
t.cex
Text size for gene labels
p.val
Optional numeric value of the category's empirical p-value
cat.desc
Optional character string as a sub-title beneath the category name
title
Optional title to the plot
...
Allows arguments from version 2.0 to be ignored

Details

SAFE-plots display the differential expression in a given category relative to the complementary set of genes. The empirical cumulative distribution is plotted for local statistics in the category, on either a ranked or unranked scale. Tick marks are drawn along the top of the graph to indicate each gene's positions, and labeled when sufficient space permits. In this manner, genes with the most extreme local statistics can be identified as contributing to the category's significance. Typical usages are
  safeplot(safe)
  safeplot(safe, cat.name)
  safeplot(c.vec, local.stats, p.val, limits)

References

W. T. Barry, A. B. Nobel and F.A. Wright, 2005, Significance Analysis of functional categories in gene expression studies: a structured permutation approach, Bioinformatics 21(9) 1943--1949.

See also the vignette included with this package.

See Also

safe.

Examples

Run this code
## Simulate a dataset with 1000 genes and 20 arrays in a 2-sample design.
## The top 100 genes will be differentially expressed at varying levels

g.alt <- 100
g.null <- 900
n <- 20

data<-matrix(rnorm(n*(g.alt+g.null)),g.alt+g.null,n)
data[1:g.alt,1:(n/2)] <- data[1:g.alt,1:(n/2)] + 
                         seq(2,2/g.alt,length=g.alt)
dimnames(data) <- list(c(paste("Alt",1:g.alt),
                         paste("Null",1:g.null)),
                       paste("Array",1:n))

## A treatment vector 
trt <- rep(c("Trt","Ctr"),each=n/2)

## 2 alt. categories and 18 null categories of size 50

C.matrix <- kronecker(diag(20),rep(1,50))
dimnames(C.matrix) <- list(dimnames(data)[[1]],
    c(paste("TrueCat",1:2),paste("NullCat",1:18)))
dim(C.matrix)

results <- safe(data,trt,C.mat = C.matrix,Pi.mat = 100)
results

## SAFE-plot made for the first category
if (interactive()) { 
safeplot(results,"TrueCat 1")
}

Run the code above in your browser using DataLab