mt.rawp2adjp {multtest} | R Documentation

## Adjusted p-values for simple multiple testing procedures

### Description

This function computes adjusted p-values for simple multiple testing procedures from a vector of raw (unadjusted) p-values. The procedures include the Bonferroni, Holm (1979), Hochberg (1988), and Sidak procedures for strong control of the family-wise Type I error rate (FWER), and the Benjamini & Hochberg (1995) and Benjamini & Yekutieli (2001) procedures for (strong) control of the false discovery rate (FDR).

### Usage

    mt.rawp2adjp(rawp, proc=c("Bonferroni", "Holm", "Hochberg", "SidakSS", "SidakSD", "BH", "BY"))

### Arguments

`rawp` | A vector of raw (unadjusted) p-values for each hypothesis under consideration. These could be nominal p-values, for example, from t-tables, or permutation p-values as given in `mt.maxT` and `mt.minP`. If the `mt.maxT` or `mt.minP` functions are used, raw p-values should be given in the original data order, `rawp[order(index)]`.
`proc` | A vector of character strings containing the names of the multiple testing procedures for which adjusted p-values are to be computed. This vector should include any of the following: `"Bonferroni"`, `"Holm"`, `"Hochberg"`, `"SidakSS"`, `"SidakSD"`, `"BH"`, `"BY"`.

### Details

Adjusted p-values are computed for simple FWER and FDR controlling procedures based on a vector of raw (unadjusted) p-values.

Bonferroni
  Bonferroni single-step adjusted p-values for strong control of the FWER.
Holm
  Holm (1979) step-down adjusted p-values for strong control of the FWER.
Hochberg
  Hochberg (1988) step-up adjusted p-values for strong control of the FWER (for raw (unadjusted) p-values satisfying the Simes inequality).
SidakSS
  Sidak single-step adjusted p-values for strong control of the FWER (for positive orthant dependent test statistics).
SidakSD
  Sidak step-down adjusted p-values for strong control of the FWER (for positive orthant dependent test statistics).
BH
  adjusted p-values for the Benjamini & Hochberg (1995) step-up FDR controlling procedure (independent and positive regression dependent test statistics).
BY
  adjusted p-values for the Benjamini & Yekutieli (2001) step-up FDR controlling procedure (general dependency structures).

### Value

A list with components

`adjp` | A matrix of adjusted p-values, with rows corresponding to hypotheses and columns to multiple testing procedures. Hypotheses are sorted in increasing order of their raw (unadjusted) p-values.
`index` | A vector of row indices, between 1 and `length(rawp)`, where rows are sorted according to their raw (unadjusted) p-values. To obtain the adjusted p-values in the original data order, use `adjp[order(index),]`.

### Author(s)

Sandrine Dudoit, http://www.stat.berkeley.edu/~sandrine,
Yongchao Ge, yongchao.ge@mssm.edu.

### References

Y. Benjamini and Y. Hochberg (1995). Controlling the false discovery rate: a practical and powerful approach to multiple testing. J. R. Statist. Soc. B. Vol. 57: 289-300.

Y. Benjamini and D. Yekutieli (2001). The control of the false discovery rate in multiple hypothesis testing under dependency. Annals of Statistics. Accepted.

S. Dudoit, J. P. Shaffer, and J. C. Boldrick (Submitted). Multiple hypothesis testing in microarray experiments.

Y. Ge, S. Dudoit, and T. P. Speed. Resampling-based multiple testing for microarray data hypothesis, Technical Report #633 of UCB Stat. http://www.stat.berkeley.edu/~gyc

Y. Hochberg (1988). A sharper Bonferroni procedure for multiple tests of significance, Biometrika. Vol. 75: 800-802.

S. Holm (1979). A simple sequentially rejective multiple test procedure. Scand. J. Statist.. Vol. 6: 65-70.

### See Also

`mt.maxT`, `mt.minP`, `mt.plot`, `mt.reject`, `golub`.

### Examples

    # Gene expression data from Golub et al. (1999)
    # To reduce computation time and for illustrative purposes, we condider only
    # the first 100 genes and use the default of B=10,000 permutations.
    # In general, one would need a much larger number of permutations
    # for microarray data.

    data(golub)
    smallgd<-golub[1:100,]
    classlabel<-golub.cl

    # Permutation unadjusted p-values and adjusted p-values for maxT procedure
    res1<-mt.maxT(smallgd,classlabel)
    rawp<-res1$rawp[order(res1$index)]

    # Permutation adjusted p-values for simple multiple testing procedures
    procs<-c("Bonferroni","Holm","Hochberg","SidakSS","SidakSD","BH","BY")
    res2<-mt.rawp2adjp(rawp,procs)

[Package multtest version 1.6.0 Index]