Last data update: 2014.03.03

R: Test a one sided hypothesis from a numerically specified...
pnullNumR Documentation

Test a one sided hypothesis from a numerically specified posterior CDF

Description

Calculates the probability of a one sided null hypothesis from a numerically calculated posterior CDF.

Usage

pnullNum(theta0, theta, cdf, type = 'upper')

Arguments

theta0

the hypothesized value, i.e. H0: theta <= theta0

theta

the values over which the the posterior CDF is specified

cdf

the values of the CDF, F(θ) = int_{-∞}^{θ}f(t).df where f(t) is the PDF.

type

the type of probability to return, 'lower' = Pr(theta <= theta0) or 'upper' = Pr(theta >= theta0). It is sufficient to use 'l' or 'u'

Details

This function uses linear interpolation to calculate bounds for points that may not be specified by CDF

Value

a list containing the element prob which will be the upper or lower tail probability depending on type

Examples

## commands for calculating a numerical posterior CDF.
## In this example, the likelihood is proportional to
## eqn{\theta^{3/2}\times exp(-\theta/4)} and a N(6, 9) prior is used.
theta <- seq(from = 0.001, to = 40, by = 0.001)
prior <- dnorm(theta,6,3)
ppnLike <- theta^1.5*exp(-theta/4)
ppnPost <- prior*ppnLike
scaleFactor <- sintegral(theta, ppnPost)$int
posterior <- ppnPost/scaleFactor
cdf <- sintegral(theta, posterior)$y
pnullNum(1, theta, cdf)

Results


R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library(Bolstad2)
> png(filename="/home/ddbj/snapshot/RGM3/R_CC/result/Bolstad2/pnullNum.Rd_%03d_medium.png", width=480, height=480)
> ### Name: pnullNum
> ### Title: Test a one sided hypothesis from a numerically specified
> ###   posterior CDF
> ### Aliases: pnullNum
> 
> ### ** Examples
> 
> ## commands for calculating a numerical posterior CDF.
> ## In this example, the likelihood is proportional to
> ## eqn{\theta^{3/2}\times exp(-\theta/4)} and a N(6, 9) prior is used.
> theta <- seq(from = 0.001, to = 40, by = 0.001)
> prior <- dnorm(theta,6,3)
> ppnLike <- theta^1.5*exp(-theta/4)
> ppnPost <- prior*ppnLike
> scaleFactor <- sintegral(theta, ppnPost)$int
> posterior <- ppnPost/scaleFactor
> cdf <- sintegral(theta, posterior)$y
> pnullNum(1, theta, cdf)
Posterior Pr(theta>=theta0) is 0.00348437219948438
> 
> 
> 
> 
> 
> dev.off()
null device 
          1 
>