dist.Multivariate.Cauchy.Cholesky {LaplacesDemon} | R Documentation |
Multivariate Cauchy Distribution: Cholesky Parameterization
Description
These functions provide the density and random number generation for the multivariate Cauchy distribution, given the Cholesky parameterization.
Usage
dmvcc(x, mu, U, log=FALSE)
rmvcc(n=1, mu, U)
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 the |
log |
Logical. If |
Details
Application: Continuous Multivariate
Density:
p(\theta) = \frac{\Gamma[(1+k)/2]}{\Gamma(1/2)1^{k/2}\pi^{k/2}|\Sigma|^{1/2}[1+(\theta-\mu)^{\mathrm{T}}\Sigma^{-1}(\theta-\mu)]^{(1+k)/2}}
Inventor: Unknown (to me, anyway)
Notation 1:
\theta \sim \mathcal{MC}_k(\mu, \Sigma)
Notation 2:
p(\theta) = \mathcal{MC}_k(\theta | \mu, \Sigma)
Parameter 1: location vector
\mu
Parameter 2: positive-definite
k \times k
scale matrix\Sigma
Mean:
E(\theta) = \mu
Variance:
var(\theta) =
Mode:
mode(\theta) = \mu
The multivariate Cauchy distribution is a multidimensional extension of the one-dimensional or univariate Cauchy distribution. The multivariate Cauchy distribution is equivalent to a multivariate t distribution with 1 degree of freedom. A random vector is considered to be multivariate Cauchy-distributed if every linear combination of its components has a univariate Cauchy distribution.
The Cauchy distribution is known as a pathological distribution because its mean and variance are undefined, and it does not satisfy the central limit theorem.
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 dmvc
, dmvcc
must additionally
matrix-multiply the Cholesky back to the scake matrix, but it
does not have to check for or correct the scale matrix to
positive-definiteness, which overall is slower. Compared with
rmvc
, rmvcc
is faster because the Cholesky decomposition
has already been performed.
Value
dmvcc
gives the density and
rmvcc
generates random deviates.
Author(s)
Statisticat, LLC. software@bayesian-inference.com
See Also
chol
,
dcauchy
,
dinvwishartc
,
dmvcpc
,
dmvtc
, and
dmvtpc
.
Examples
library(LaplacesDemon)
x <- seq(-2,4,length=21)
y <- 2*x+10
z <- x+cos(y)
mu <- c(1,12,2)
Sigma <- matrix(c(1,2,0,2,5,0.5,0,0.5,3), 3, 3)
U <- chol(Sigma)
f <- dmvcc(cbind(x,y,z), mu, U)
X <- rmvcc(1000, rep(0,2), diag(2))
X <- X[rowSums((X >= quantile(X, probs=0.025)) &
(X <= quantile(X, probs=0.975)))==2,]
joint.density.plot(X[,1], X[,2], color=TRUE)