R/matrixt.R
rmatrixinvt.Rd
Generate random samples from the inverted matrix variate t distribution or compute densities.
rmatrixinvt( n, df, mean, L = diag(dim(as.matrix(mean))[1]), R = diag(dim(as.matrix(mean))[2]), U = L %*% t(L), V = t(R) %*% R, list = FALSE, array = NULL ) dmatrixinvt( x, df, mean = matrix(0, p, n), L = diag(p), R = diag(n), U = L %*% t(L), V = t(R) %*% R, log = FALSE )
n | number of observations for generation |
---|---|
df | degrees of freedom (\(>0\), may be non-integer),
|
mean | \(p \times q\) This is really a 'shift' rather than a mean, though the expected value will be equal to this if \(df > 2\) |
L | \(p \times p\) matrix specifying relations among the rows. By default, an identity matrix. |
R | \(q \times q\) matrix specifying relations among the columns. By default, an identity matrix. |
U | \(LL^T\) - \(p \times p\) positive definite matrix for rows, computed from \(L\) if not specified. |
V | \(R^T R\) - \(q \times q\) positive definite matrix for columns, computed from \(R\) if not specified. |
list | Defaults to |
array | If \(n = 1\) and this is not specified and |
x | quantile for density |
log | logical; in |
rmatrixinvt
returns either a list of \(n\)
\(p \times q\) matrices or
a \(p \times q \times n\) array.
dmatrixinvt
returns the density at x
.
Gupta, Arjun K, and Daya K Nagar. 1999. Matrix Variate Distributions. Vol. 104. CRC Press. ISBN:978-1584880462
Dickey, James M. 1967. “Matricvariate Generalizations of the Multivariate t Distribution and the Inverted Multivariate t Distribution.” Ann. Math. Statist. 38 (2): 511–18. doi: 10.1214/aoms/1177698967
# an example of drawing from the distribution and computing the density. A <- rmatrixinvt(n = 2, df = 10, diag(4)) dmatrixinvt(A[, , 1], df = 10, mean = diag(4)) #> [1] 193350.9