R: The posterior distribution for the hyper-parameters of the...
pprob.dist
R Documentation
The posterior distribution for the hyper-parameters of the Beta distribution.
Description
This function accepts a vector of simulated null p-values from a single simulated study.
The null p-values should represent a subset of all the simulated p-values corresponding
to the tests with no signal. The result is an estimated posterior distribution for the
parameters of the Beta distribution. A posterior centered at (1,1) suggests a uniform
distribution.
An vector of null p-values from a single simulated study.
alpha
The range of the first parameter for the prior on the beta distribution.
beta
The range of the second parameter for the prior on the beta distribution.
delta
The grid size, the posterior is calculated over the range of the parameters at grid points separated by delta.
eps
Maximum integration error when computing the posterior distribution.
Details
The pprob.dist function calculates the posterior probability for the parameters of
the beta distribution given the sample p. The prior is assumed to be uniform on
the range specified by the user. A posterior distribution is returned in the form
of a matrix, where element (i,j) is the posterior at (alpha[1] + i*delta, beta[1] + j*delta).
The null p-values should be simulated from a realistic distribution and only the null p-values should
be passed to the pprob.dist function.
Value
dist
The posterior distribution in the form of a matrix.
J.T. Leek and J.D. Storey, "The Joint Null Distribution of Multiple Hypothesis Tests."
See Also
dks, dks.pvalue, pprob.uniform,cred.set
Examples
## Load data
data(dksdata)
## Calculate the posterior distribution
dist1 <- pprob.dist(P[,1])
delta <- 0.1
## Plot the posterior distribution
alpha <- seq(0.1,10,by=delta)
beta <- seq(0.1,10,by=delta)
image(log10(alpha),log10(beta),dist1,xaxt="n",yaxt="n",xlab="Alpha",ylab="Beta")
axis(1,at=c(-2,-1,0,1,2),labels=c("10^-2","10^-1","10^0","10^1","10^2"))
axis(2,at=c(-2,-1,0,1,2),labels=c("10^-2","10^-1","10^0","10^1","10^2"))
points(0,0,col="blue",cex=1,pch=19)
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(dks)
> png(filename="/home/ddbj/snapshot/RGM3/R_BC/result/dks/pprob.dist.Rd_%03d_medium.png", width=480, height=480)
> ### Name: pprob.dist
> ### Title: The posterior distribution for the hyper-parameters of the Beta
> ### distribution.
> ### Aliases: pprob.dist
> ### Keywords: misc
>
> ### ** Examples
>
>
> ## Load data
> data(dksdata)
>
> ## Calculate the posterior distribution
> dist1 <- pprob.dist(P[,1])
>
> delta <- 0.1
>
> ## Plot the posterior distribution
> alpha <- seq(0.1,10,by=delta)
> beta <- seq(0.1,10,by=delta)
> image(log10(alpha),log10(beta),dist1,xaxt="n",yaxt="n",xlab="Alpha",ylab="Beta")
> axis(1,at=c(-2,-1,0,1,2),labels=c("10^-2","10^-1","10^0","10^1","10^2"))
> axis(2,at=c(-2,-1,0,1,2),labels=c("10^-2","10^-1","10^0","10^1","10^2"))
> points(0,0,col="blue",cex=1,pch=19)
>
>
>
>
>
>
> dev.off()
null device
1
>