bcal {pcal} | R Documentation |
Lower Bounds on Bayes Factors for Point Null Hypotheses
Description
Calibrate p-values under a robust Bayesian perspective so that they can be interpreted as lower bounds on Bayes factors in favor of point null hypotheses.
Usage
bcal(p)
Arguments
p |
A numeric vector with values in the [0,1] interval. |
Details
bcal
uses the calibration of p-values into lower bounds for Bayes factors developed in Sellke et al. (2001):
B(p) = -e \, p \, log (p)
for p
< (1/e) and
B(p) = 1
otherwise, where p
is a p-value on a classical test statistic and B(p)
approximates the smallest Bayes factor that is found by changing the prior distribution of the parameter of interest (under the alternative hypothesis) over wide classes of distributions.
Sellke et al. (2001) noted that a scenario in which they definitely recommend this calibration is when investigating fit to the null model/hypothesis with no explicit alternative in mind. Pericchi and Torres (2011) warn that despite the usefulness and appropriateness of this p-value calibration it does not depend on sample size and hence the lower bounds obtained with large samples may be conservative.
Value
bcal
returns a numeric vector with the same length
as p
.
References
Pericchi L, Torres D (2011).
“Quick anomaly detection by the Newcomb—Benford law, with applications to electoral processes data from the USA, Puerto Rico and Venezuela.”
Statistical Science, 26(4), 502–516.
Sellke T, Bayarri MJ, Berger JO (2001).
“Calibration of p values for testing precise null hypotheses.”
The American Statistician, 55(1), 62–71.
See Also
-
pcal
for a p-value calibration that returns lower bounds on the posterior probabilities of point null hypotheses. -
bfactor_interpret
andbfactor_interpret_kr
for the interpretation of Bayes factors. -
bfactor_log_interpret
andbfactor_log_interpret_kr
for the interpretation of the logarithms of Bayes factors. -
bfactor_to_prob
to turn Bayes factors into posterior probabilities.
Examples
# Calibration of a typical "threshold" p-value:
bcal(.05)
# Calibration of typical "threshold" p-values:
bcal(c(.1, .05, .01, .005, .001))
# Application: chi-squared goodness-of-fit test,
# lower bound on the Bayes factor in favor of the null hypothesis:
x <- matrix(c(12, 41, 25, 33), ncol = 2)
bcal(chisq.test(x)[["p.value"]])