dmom function

Non-local prior density, cdf and quantile functions.

Non-local prior density, cdf and quantile functions.

dmom, dimom and demom return the density for the moment, inverse moment and exponential moment priors. pmom, pimom and pemom return the distribution function for the univariate moment, inverse moment and exponential moment priors (respectively). qmom and qimom return the quantiles for the univariate moment and inverse moment priors. dmomigmarg returns the marginal density implied by a MOM(x;tau*phi)Invgamma(phi;a/2,b/2), pmomigmarg its cdf. Analogously demomigmarg and demomigmarg for eMOM(x;tauphi)*Invgamma(phi;a/2,b/2)

dmom(x, tau, a.tau, b.tau, phi=1, r=1, V1, baseDensity='normal', nu=3, logscale=FALSE, penalty='product') dimom(x, tau=1, phi=1, V1, logscale=FALSE, penalty='product') demom(x, tau, a.tau, b.tau, phi=1, logscale=FALSE) pmom(q, V1 = 1, tau = 1) pimom(q, V1 = 1, tau = 1, nu = 1) pemom(q, tau, a.tau, b.tau) qmom(p, V1 = 1, tau = 1) qimom(p, V1 = 1, tau = 1, nu = 1) dmomigmarg(x,tau,a,b,logscale=FALSE) pmomigmarg(x,tau,a,b) demomigmarg(x,tau,a,b,logscale=FALSE) pemomigmarg(x,tau,a,b)

Arguments

  • x: In the univariate setting, x is a vector with the values at which to evaluate the density. In the multivariate setting it is a matrix with an observation in each row.

  • q: Vector of quantiles.

  • p: Vector of probabilities.

  • V1: Scale matrix (ignored if penalty=='product'). Defaults to 1 in univariate setting and the identity matrix in the multivariate setting.

  • tau: Prior dispersion parameter is tau*phi. See details.

  • a.tau: If tau is left missing, an Inverse Gamma(a.tau/2,b.tau/2) is placed on tau. In this case dmom and demom return the density marginalized with respect to tau.

  • b.tau: See a.tau.

  • phi: Prior dispersion parameter is tau*phi. See details.

  • r: Prior power parameter for MOM prior is 2*r

  • baseDensity: For baseDensity=='normal' a Normal MOM prior is used, for baseDensity=='laplace' a Laplace MOM prior, for baseDensity=='t' a T MOM prior with nu

    degrees of freedom is used.

  • nu: Prior parameter indicating the degrees of freedom for the quadratic T MOM and iMOM prior densities. The tails of the inverse moment prior are proportional to the tails of a multivariate T with nu degrees of freedom.

  • penalty: penalty=='product' indicates that product MOM/iMOM should be used. penalty=='quadratic' indicates quadratic iMOM. See Details.

  • logscale: For logscale==TRUE, dimom returns the natural log of the prior density.

  • a: The marginal prior on phi is IG(a/2,b/2)

  • b: The marginal prior on phi is IG(a/2,b/2)

Details

For type=='quadratic' the density is as follows. Define the quadratic form q(theta)= (theta-theta0)' * solve(V1) * (theta-theta0) / (tauphi). The normal moment prior density is proportional to q(theta)dmvnorm(theta,theta0,tauphiV1). The T moment prior is proportional to q(theta)dmvt(theta,theta0,tauphi*V1,df=nu). The inverse moment prior density is proportional to q(theta)^(-(nu+d)/2) * exp(-1/q(theta)).

pmom, pimom and qimom use closed-form expressions, while qmom uses nlminb to find quantiles numerically. Only the univariate version is implemented. In this case the product MOM is equivalent to the quadratic MOM. The same happens for the iMOM.

dmomigmarg returns the marginal density

p(x)= int MOM(x;0,tau*phi) IG(phi;a/2,b/2) dphi

Returns

Prior density, cumulative distribution function or quantile.

References

Johnson V.E., Rossell D. Non-Local Prior Densities for Default Bayesian Hypothesis Tests. Journal of the Royal Statistical Society B, 2010, 72, 143-170.

Johnson V.E., Rossell D. Bayesian model selection in high-dimensional settings. Journal of the American Statistical Assocation, 2012, 107, 649-660

See http://rosselldavid.googlepages.com for technical reports.

Author(s)

David Rossell

Examples

#evaluate and plot the moment and inverse moment priors library(mombf) tau <- 1 thseq <- seq(-3,3,length=1000) plot(thseq,dmom(thseq,tau=tau),type='l',ylab='Prior density') lines(thseq,dimom(thseq,tau=tau),lty=2,col=2)
  • Maintainer: David Rossell
  • License: GPL (>= 2) | file LICENSE
  • Last published: 2024-02-06