rgwish: Sampling from G-Wishart distribution

View source: R/rgwish.R

rgwishR Documentation

Sampling from G-Wishart distribution

Description

Generates random matrices, distributed according to the G-Wishart distribution with parameters b and D, W_G(b, D) with respect to the graph structure G. Note this fuction works for both non-decomposable and decomposable graphs.

Usage

 rgwish( n = 1, adj = NULL, b = 3, D = NULL, threshold = 1e-8 ) 

Arguments

n

number of samples required.

adj

adjacency matrix corresponding to the graph structure which can be non-decomposable or decomposable. It should be an upper triangular matrix in which a_{ij}=1 if there is a link between notes i and j, otherwise a_{ij}=0. adj could be an object of class "graph", from function graph.sim. It also could be an object of class "sim", from function bdgraph.sim. It also could be an object of class "bdgraph", from functions bdgraph.mpl or bdgraph.

b

degree of freedom for G-Wishart distribution, W_G(b, D).

D

positive definite (p \times p) "scale" matrix for G-Wishart distribution, W_G(b, D). The default is an identity matrix.

threshold

threshold value for the convergence of sampling algorithm from G-Wishart.

Details

Sampling from G-Wishart distribution, K \sim W_G(b, D), with density:

Pr(K) \propto |K| ^ {(b - 2) / 2} \exp \left\{- \frac{1}{2} \mbox{trace}(K \times D)\right\},

which b > 2 is the degree of freedom and D is a symmetric positive definite matrix.

Value

A numeric array, say A, of dimension (p \times p \times n), where each A[,,i] is a positive definite matrix, a realization of the G-Wishart distribution, W_G(b, D). Note, for the case n=1, the output is a matrix.

Author(s)

Reza Mohammadi a.mohammadi@uva.nl

References

Lenkoski, A. (2013). A direct sampler for G-Wishart variates, Stat, 2:119-128, \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sta4.23")}

Mohammadi, R. and Wit, E. C. (2019). BDgraph: An R Package for Bayesian Structure Learning in Graphical Models, Journal of Statistical Software, 89(3):1-30, \Sexpr[results=rd]{tools:::Rd_expr_doi("10.18637/jss.v089.i03")}

Mohammadi, A. and Wit, E. C. (2015). Bayesian Structure Learning in Sparse Gaussian Graphical Models, Bayesian Analysis, 10(1):109-138, \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1214/14-BA889")}

See Also

gnorm, rwish

Examples

# Generating a 'circle' graph as a non-decomposable graph
adj <- graph.sim( p = 5, graph = "circle" )
adj    # adjacency of graph with 5 nodes
  
sample <- rgwish( n = 1, adj = adj, b = 3, D = diag( 5 ) )
round( sample, 2 ) 

sample <- rgwish( n = 5, adj = adj )
round( sample, 2 )  

BDgraph documentation built on Sept. 11, 2024, 5:30 p.m.