hyperparlin {sdPrior}R Documentation

Find Scale Parameter for Inverse Gamma Hyperprior of Linear Effects with Spike and Slab Prior

Description

This function implements a optimisation routine that computes the scale parameter b and selection parameter r. Here, we assume an inverse gamma prior IG(a,b) for \tau^2 and \beta|\delta,\tau^2\sim N(0,r(\delta)\tau^2). For given shape paramter a the user gets b, r such that approximately P(\beta\le c2|spike)\ge 1-\alpha2 and P(\beta\ge c1|slab)\ge 1-\alpha1 hold.
Note that if you observe numerical instabilities try not to specify \alpha1 and \alpha2 smaller than 0.1.

Usage

hyperparlin(alpha1 = 0.1, alpha2 = 0.1, c1 = 0.1, c2 = 0.1,
  eps = .Machine$double.eps, a = 5)

Arguments

alpha1

denotes the 1-\alpha1 level for b.

alpha2

denotes the 1-\alpha2 level for r.

c1

denotes the expected range of the linear effect in the slab part.

c2

denotes the expected range of the linear effect in the spike part.

eps

denotes the error tolerance of the result, default is .Machine$double.eps.

a

is the shape parameter of the inverse gamma distribution, default is 5.

Value

an object of class list with root values r, b from uniroot.

Warning

\alpha1 and \alpha2 should not be smaller than 0.1 due to numerical sensitivity and possible instability. Better change c1, c2.

Author(s)

Nadja Klein

References

Nadja Klein, Thomas Kneib, Stefan Lang and Helga Wagner (2016). Automatic Effect Selection in Distributional Regression via Spike and Slab Priors. Working Paper.

Examples

set.seed(123)
result <- hyperparlin()
r <- result$r
b <- result$b

hyperparlin(alpha1=0.1,alpha2=0.1,c1=0.5,c2=0.1,a=5) 


[Package sdPrior version 1.0-0 Index]