calibrateP computes calibrated p-values using the fitted null distribution

calibrateP(null, logRr, seLogRr, ...)

# S3 method for null
calibrateP(null, logRr, seLogRr, ...)

# S3 method for mcmcNull
calibrateP(null, logRr, seLogRr, pValueOnly, ...)



An object of class null created using the fitNull function or an object of class mcmcNull created using the fitMcmcNull function.


A numeric vector of one or more effect estimates on the log scale


The standard error of the log of the effect estimates. Hint: often the standard error = (log(<lower bound 95 percent confidence interval>) - log(<effect estimate>))/qnorm(0.025)


Any additional parameters (currently none).


If true, will return only the calibrated P-value itself, not the credible interval.


The two-sided calibrated p-value.


This function computes a calibrated two-sided p-value as described in Schuemie et al (2014).

Methods (by class)

  • null: Computes the calibrated P-value using asymptotic assumptions.

  • mcmcNull: Computes the calibrated P-value and 95 percent credible interval using Markov Chain Monte Carlo (MCMC).


Schuemie MJ, Ryan PB, Dumouchel W, Suchard MA, Madigan D. Interpreting observational studies: why empirical calibration is needed to correct p-values. Statistics in Medicine 33(2):209-18,2014


data(sccs) negatives <- sccs[sccs$groundTruth == 0, ] null <- fitNull(negatives$logRr, negatives$seLogRr) positive <- sccs[sccs$groundTruth == 1, ] calibrateP(null, positive$logRr, positive$seLogRr)
#> [1] 0.8390598