Learn R Programming

gap (version 1.1-1)

FPRP: False-positive report probability

Description

The function calculates the false positive report probability (FPRP), the probability of no true association beteween a genetic variant and disease given a statistically significant finding, which depends not only on the observed P value but also on both the prior probability that the assocition is real and the statistical power of the test. An associate result is the false negative reported probability (FNRP). See example for the recommended steps.

The FPRP and FNRP are derived as follows. Let $H_0$=null hypothesis (no association), $H_A$=alternative hypothesis (association). Since classic frequentist theory considers they are fixed, one has to resort to Bayesian framework by introduing prior, $\pi=P(H_0=TRUE)=P(association)$. Let $T$=test statistic, and $P(T>z_\alpha|H_0=TRUE)=P(rejecting\ H_0|H_0=TRUE)=\alpha$, $P(T>z_\alpha|H_0=FALSE)=P(rejecting\ H_0|H_A=TRUE)=1-\beta$. The joint probability of test and truth of hypothesis can be expressed by $\alpha$, $\beta$ and $\pi$.

llll{Truth of $H_A$ significant nonsignificant Total TRUE $(1-\beta)\pi$ $\beta\pi$ $\pi$ FALSE $\alpha (1-\pi)$ $(1-\alpha)(1-\pi)$ $1-\pi$ Total $(1-\beta)\pi+\alpha (1-\pi)$ $\beta\pi+(1-\alpha)(1-\pi)$ 1 }

We have $FPRP=P(H_0=TRUE|T>z_\alpha)= \alpha(1-\pi)/[\alpha(1-\pi)+(1-\beta)\pi]={1+\pi/(1-\pi)][(1-\beta)/\alpha]}^{-1}$ and similarly $FNRP={1+[(1-\alpha)/\beta][(1-\pi)/\pi]}^{-1}$.

Usage

FPRP(a,b,pi0,ORlist,logscale=FALSE)

Arguments

a
parameter value at which the power is to be evaluated
b
the variance for a, or the uppoer point of a 95%CI if logscale=FALSE
pi0
the prior probabiility that $H_0$ is true
ORlist
a vector of ORs that is most likely
logscale
FALSE=a,b in orginal scale, TRUE=a, b in log scale

Value

  • The returned value is a list with compoents,
  • pp value corresponding to a,b
  • powerthe power corresponding to the vector of ORs
  • FPRPFalse-positive report probability
  • FNRPFalse-negative report probability

References

Wacholder S, Chanock S, Garcia-Closas M, El ghomli L, Rothman N. (2004) Assessing the probability that a positive report is false: an approach for molecular epidemiology studies. J Natl Cancer Inst 96:434-442

See Also

BFDP

Examples

Run this code
# Example by Laure El ghormli & Sholom Wacholder on 25-Feb-2004
# Step 1 - Pre-set an FPRP-level criterion for noteworthiness

T <- 0.2

# Step 2 - Enter values for the prior that there is an association

pi0 <- c(0.25,0.1,0.01,0.001,0.0001,0.00001)

# Step 3 - Enter values of odds ratios (OR) that are most likely, assuming that there is a non-null association

ORlist <- c(1.2,1.5,2.0)

# Step 4 - Enter OR estimate and 95
OR <- 1.316
ORlo <- 1.08
ORhi <- 1.60

logOR <- log(OR)
selogOR <- abs(logOR-log(ORhi))/1.96
p <- ifelse(logOR>0,2*(1-pnorm(logOR/selogOR)),2*pnorm(logOR/selogOR))
p
q <- qnorm(1-p/2)
POWER <- ifelse(log(ORlist)>0,1-pnorm(q-log(ORlist)/selogOR),pnorm(-q-log(ORlist)/selogOR))
POWER
FPRPex <- t(p*(1-pi0)/(p*(1-pi0)+POWER%o%pi0))
row.names(FPRPex) <- pi0
colnames(FPRPex) <- ORlist
FPRPex
FPRPex>T

## now turn to FPRP
OR <- 1.316
ORhi <- 1.60
ORlist <- c(1.2,1.5,2.0)
pi0 <- c(0.25,0.1,0.01,0.001,0.0001,0.00001)
z <- FPRP(OR,ORhi,pi0,ORlist,logscale=FALSE)
z

Run the code above in your browser using DataLab