BDgraph (version 2.72)

rgwish: 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 )

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.

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.

Author

Reza Mohammadi a.mohammadi@uva.nl

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.

References

Lenkoski, A. (2013). A direct sampler for G-Wishart variates, Stat, 2:119-128, 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, 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, tools:::Rd_expr_doi("10.1214/14-BA889")

See Also

gnorm, rwish

Examples

Run this code
# 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 )  

Run the code above in your browser using DataLab