pi0est {qvalue} | R Documentation

## Proportion of true null p-values

### Description

Estimates the proportion of true null p-values, i.e., those following the Uniform(0,1) distribution.

### Usage

    pi0est(p, lambda = seq(0.05, 0.95, 0.05), pi0.method = c("smoother",
      "bootstrap"), smooth.df = 3, smooth.log.pi0 = FALSE, ...)

### Arguments

`p` | A vector of p-values (only necessary input).
`lambda` | The value of the tuning parameter to estimate pi_0. Must be in [0,1). Optional, see Storey (2002).
`pi0.method` | Either "smoother" or "bootstrap"; the method for automatically choosing tuning parameter in the estimation of pi_0, the proportion of true null hypotheses.
`smooth.df` | Number of degrees-of-freedom to use when estimating pi_0 with a smoother. Optional.
`smooth.log.pi0` | If TRUE and `pi0.method` = "smoother", pi_0 will be estimated by applying a smoother to a scatterplot of log(pi_0) estimates against the tuning parameter lambda. Optional.
`...` | Arguments passed from `qvalue` function.

### Details

If no options are selected, then the method used to estimate pi_0 is the smoother method described in Storey and Tibshirani (2003). The bootstrap method is described in Storey, Taylor & Siegmund (2004). A closed form solution of the bootstrap method is used in the package and is significantly faster.

### Value

Returns a list:

`pi0` | A numeric that is the estimated proportion of true null p-values.
`pi0.lambda` | A vector of the proportion of null values at the lambda values (see vignette).
`lambda` | A vector of lambda value(s) utilized in calculating `pi0.lambda`.
`pi0.smooth` | A vector of fitted values from the smoother fit to the pi_0 estimates at each `lambda` value (pi0.method="bootstrap" returns NULL).

### Author(s)

John D. Storey

### References

Storey JD. (2002) A direct approach to false discovery rates. Journal of the Royal Statistical Society, Series B, 64: 479-498.
http://onlinelibrary.wiley.com/doi/10.1111/1467-9868.00346/abstract

Storey JD and Tibshirani R. (2003) Statistical significance for genome-wide experiments. Proceedings of the National Academy of Sciences, 100: 9440-9445.

Storey JD. (2003) The positive false discovery rate: A Bayesian interpretation and the q-value. Annals of Statistics, 31: 2013-2035.
http://projecteuclid.org/DPubS/Repository/1.0/Disseminate?view=body&id=pdf_1&handle=euclid.aos/1074290335

Storey JD, Taylor JE, and Siegmund D. (2004) Strong control, conservative point estimation, and simultaneous conservative consistency of false discovery rates: A unified approach. Journal of the Royal Statistical Society, Series B, 66: 187-205.
http://onlinelibrary.wiley.com/doi/10.1111/j.1467-9868.2004.00439.x/abstract

Storey JD. (2011) False discovery rates. In International Encyclopedia of Statistical Science.
http://genomine.org/papers/Storey_FDR_2011.pdf
http://www.springer.com/statistics/book/978-3-642-04897-5

### See Also

`qvalue`

### Examples

    # import data
    data(hedenfalk)
    p <- hedenfalk$p

    # proportion of null p-values
    nullRatio <- pi0est(p)
    nullRatioS <- pi0est(p, lambda=seq(0.40, 0.95, 0.05), smooth.log.pi0="TRUE")
    nullRatioM <- pi0est(p, pi0.method="bootstrap")

    # check behavior of estimate over lambda
    # also, pi0est arguments can be passed to qvalue
    qobj = qvalue(p, lambda=seq(0.05, 0.95, 0.1), smooth.log.pi0="TRUE")
    hist(qobj)
    plot(qobj)

[Package qvalue version 2.19.0 Index]