| dist.Multivariate.t.Precision.Cholesky {LaplacesDemon} | R Documentation |
Multivariate t Distribution: Precision-Cholesky Parameterization
Description
These functions provide the density and random number generation for the multivariate t distribution, otherwise called the multivariate Student distribution. These functions use the precision and Cholesky parameterization.
Usage
dmvtpc(x, mu, U, nu=Inf, log=FALSE)
rmvtpc(n=1, mu, U, nu=Inf)
Arguments
x |
This is either a vector of length |
n |
This is the number of random draws. |
mu |
This is a numeric vector representing the location parameter,
|
U |
This is a |
nu |
This is the degrees of freedom |
log |
Logical. If |
Details
Application: Continuous Multivariate
Density:
p(\theta) = \frac{\Gamma((\nu+k)/2)}{\Gamma(\nu/2)\nu^{k/2}\pi^{k/2}} |\Omega|^{1/2} (1 + \frac{1}{\nu} (\theta-\mu)^T \Omega (\theta-\mu))^{-(\nu+k)/2}Inventor: Unknown (to me, anyway)
Notation 1:
\theta \sim \mathrm{t}_k(\mu, \Omega^{-1}, \nu)Notation 2:
p(\theta) = \mathrm{t}_k(\theta | \mu, \Omega^{-1}, \nu)Parameter 1: location vector
\muParameter 2: positive-definite
k \times kprecision matrix\OmegaParameter 3: degrees of freedom
\nu > 0Mean:
E(\theta) = \mu, for\nu > 1, otherwise undefinedVariance:
var(\theta) = \frac{\nu}{\nu - 2} \Omega^{-1}, for\nu > 2Mode:
mode(\theta) = \mu
The multivariate t distribution, also called the multivariate Student or multivariate Student t distribution, is a multidimensional extension of the one-dimensional or univariate Student t distribution. A random vector is considered to be multivariate t-distributed if every linear combination of its components has a univariate Student t-distribution.
It is usually parameterized with mean and a covariance matrix, or in
Bayesian inference, with mean and a precision matrix, where the
precision matrix is the matrix inverse of the covariance matrix. These
functions provide the precision parameterization for convenience and
familiarity. It is easier to calculate a multivariate t density
with the precision parameterization, because a matrix inversion can be
avoided. The precision matrix is replaced with an upper-triangular
k \times k matrix that is Cholesky factor
\textbf{U}, as per the chol function for Cholesky
decomposition.
This distribution has a mean parameter vector \mu of length
k, and a k \times k precision matrix
\Omega, which must be positive-definite. When degrees of
freedom \nu=1, this is the multivariate Cauchy distribution.
In practice, \textbf{U} is fully unconstrained for proposals
when its diagonal is log-transformed. The diagonal is exponentiated
after a proposal and before other calculations. Overall, the Cholesky
parameterization is faster than the traditional parameterization.
Compared with dmvtp, dmvtpc must additionally
matrix-multiply the Cholesky back to the precision matrix, but it
does not have to check for or correct the precision matrix to
positive-definiteness, which overall is slower. Compared with
rmvtp, rmvtpc is faster because the Cholesky decomposition
has already been performed.
Value
dmvtpc gives the density and
rmvtpc generates random deviates.
Author(s)
Statisticat, LLC. software@bayesian-inference.com
See Also
chol,
dwishartc,
dmvc,
dmvcp,
dmvtc,
dst,
dstp, and
dt.
Examples
library(LaplacesDemon)
x <- seq(-2,4,length=21)
y <- 2*x+10
z <- x+cos(y)
mu <- c(1,12,2)
Omega <- matrix(c(1,2,0,2,5,0.5,0,0.5,3), 3, 3)
U <- chol(Omega)
nu <- 4
f <- dmvtpc(cbind(x,y,z), mu, U, nu)
X <- rmvtpc(1000, c(0,1,2), U, 5)
joint.density.plot(X[,1], X[,2], color=TRUE)