Mit: Mixture of Student-t Distributions

MitR Documentation

Mixture of Student-t Distributions

Description

Density function or random generation for an adaptive mixture of Student-t distributions

Usage


dMit(theta, mit = list(), log = TRUE)
rMit(N = 1, mit = list())

Arguments

theta

matrix (of size N \times d, where N,d \geq 1) of real values.

mit

list containing information on the mixture approximation (see *Details*).

log

logical; if log = TRUE, returns (natural) logarithm values of the density. Default: log = TRUE.

N

number of draws (positive integer number).

Details

dMit returns the density values while rMit generates draws from a mixture of Student-t distributions.

The argument mit is a list containing information on the adaptive mixture of Student-t distributions. The following components must be provided:

p

vector (of length H) of mixture probabilities.

mu

matrix (of size H \times d) containing the vectors of modes (in row) of the mixture components.

Sigma

matrix (of size H \times d^2) containing the scale matrices (in row) of the mixture components.

df

degrees of freedom parameter of the Student-t components (positive real number).

where H (\geq 1) is the number of components and d (\geq 1) is the dimension of the mixture approximation. Typically, mit is estimated by the function AdMit. If mit = list(), a standard Cauchy distribution is used, that is, a univariate Student-t distribution located at 0 with unit scale and one degree of freedom, whatever the dimension of the problem.

Value

Vector (of length N of density values, or matrix (of size Nxd) of random draws, where d (\geq 1) is the dimension of the mixture approximation.

Note

Further details and examples of the R package AdMit can be found in Ardia, Hoogerheide, van Dijk (2009a,b).

Please cite the package in publications. Use citation("AdMit").

Author(s)

David Ardia

References

Ardia, D., Hoogerheide, L.F., van Dijk, H.K. (2009a). AdMit: Adaptive Mixture of Student-t Distributions. R Journal 1(1), pp.25-30. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.32614/RJ-2009-003")}

Ardia, D., Hoogerheide, L.F., van Dijk, H.K. (2009b). Adaptive Mixture of Student-t Distributions as a Flexible Candidate Distribution for Efficient Simulation: The R Package AdMit. Journal of Statistical Software 29(3), pp.1-32. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.18637/jss.v029.i03")}

See Also

AdMit for fitting an adaptive mixture of Student-t distributions to a given function KERNEL, AdMitIS for importance sampling using an adaptive mixture of Student-t distributions as the importance density, AdMitMH for the independence chain Metropolis-Hastings using an adaptive mixture of Student-t distributions as the candidate density.

Examples


  ## NB : Low number of draws for speedup. Consider using more draws!
  ## The examples below change the graphical parameters; restore them on exit
  oldpar <- par(no.readonly = TRUE)
  on.exit(par(oldpar))

  ## One dimensional two components mixture of Student-t distributions
  mit <- list(p = c(0.5, 0.5),
              mu = matrix(c(-2.0, 0.5), 2, 1, byrow = TRUE),
              Sigma = matrix(0.1, 2),
              df = 10)
  ## Generate draws from the mixture
  hist(rMit(1e4, mit = mit), nclass = 100, freq = FALSE)
  x <- seq(from = -5.0, to = 5.0, by = 0.01)
  ## Add the density to the histogram
  lines(x, dMit(x, mit = mit, log = FALSE), col = "red", lwd = 2)

  ## Two dimensional (one component mixture) Student-t distribution
  mit <- list(p = 1,
              mu = matrix(0.0, 1.0, 2.0),
              Sigma = matrix(c(1.0, 0.0, 0.0, 1.0), 1, 4),
              df = 10)
  ## Function used to plot the mixture in two dimensions
  dMitPlot <- function(x1, x2, mit = mit)
  {
    dMit(cbind(x1, x2), mit = mit, log = FALSE)
  }
  x1 <- x2 <- seq(from = -10.0, to = 10.0, by = 0.1)
  thexlim <- theylim <- range(x1)
  z <- outer(x1, x2, FUN = dMitPlot, mit = mit)
  ## Contour plot of the mixture
  contour(x1, x2, z, nlevel = 20, las = 1, 
          col = rainbow(20),
          xlim = thexlim, ylim = theylim)
  par(new = TRUE)
  ## Generate draws from the mixture
  plot(rMit(1e4, mit = mit), pch = 20, cex = 0.3, 
            xlim = thexlim, ylim = theylim, col = "red", las = 1)


AdMit documentation built on Aug. 21, 2026, 5:14 p.m.

Related to Mit in AdMit...