BFDP | R Documentation |
Bayesian false-discovery probability
BFDP(a, b, pi1, W, logscale = FALSE)
a |
parameter value at which the power is to be evaluated. |
b |
the variance for a, or the uppoer point ( |
pi1 |
the prior probabiility of a non-null association. |
W |
the prior variance. |
logscale |
FALSE=the orginal scale, TRUE=the log scale. |
This function calculates BFDP, the approximate P(H_0|\hat\theta)
,
given an estiamte of the log relative risk, \hat\theta
, the variance of
this estimate, V
, the prior variance, W
, and the prior probability of
a non-null association. When logscale=TRUE, the function accepts an estimate of the relative
risk, \hat{RR}
, and the upper point of a 95% confidence interval RR_{hi}
.
The returned value is a list with the following components:
PH0. probability given a,b).
PH1. probability given a,b,W).
BF. Bayes factor, P_{H_0}/P_{H_1}
.
BFDP. Bayesian false-discovery probability.
ABF. approxmiate Bayes factor.
ABFDP. approximate Bayesian false-discovery probability.
Adapted from BFDP functions by Jon Wakefield on 17th April, 2007.
Jon Wakefield, Jing Hua Zhao
wakefield07gap
FPRP
## Not run:
# Example from BDFP.xls by Jon Wakefield and Stephanie Monnier
# Step 1 - Pre-set an BFDP-level threshold for noteworthiness: BFDP values below this
# threshold are noteworthy
# The threshold is given by R/(1+R) where R is the ratio of the cost of a false
# non-discovery to the cost of a false discovery
T <- 0.8
# Step 2 - Enter up values for the prior that there is an association
pi0 <- c(0.7,0.5,0.01,0.001,0.00001,0.6)
# Step 3 - Enter the value of the OR that is the 97.5% point of the prior, for example
# if we pick the value 1.5 we believe that the prior probability that the
# odds ratio is bigger than 1.5 is 0.025.
ORhi <- 3
W <- (log(ORhi)/1.96)^2
W
# Step 4 - Enter OR estimate and 95% confidence interval (CI) to obtain BFDP
OR <- 1.316
OR_L <- 1.10
OR_U <- 2.50
logOR <- log(OR)
selogOR <- (log(OR_U)-log(OR))/1.96
r <- W/(W+selogOR^2)
r
z <- logOR/selogOR
z
ABF <- exp(-z^2*r/2)/sqrt(1-r)
ABF
FF <- (1-pi0)/pi0
FF
BFDPex <- FF*ABF/(FF*ABF+1)
BFDPex
pi0[BFDPex>T]
## now turn to BFDP
pi0 <- c(0.7,0.5,0.01,0.001,0.00001,0.6)
ORhi <- 3
OR <- 1.316
OR_U <- 2.50
W <- (log(ORhi)/1.96)^2
z <- BFDP(OR,OR_U,pi0,W)
z
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.