Learn R Programming

mvtnorm (version 0.9-9992)

qmvnorm: Quantiles of the Multivariate Normal Distribution

Description

Computes the equicoordinate quantile function of the multivariate normal distribution for arbitrary correlation matrices based on inversion of pmvnorm.

Usage

qmvnorm(p, interval = NULL, tail = c("lower.tail", 
        "upper.tail", "both.tails"), mean = 0, corr = NULL, 
        sigma = NULL, algorithm = GenzBretz(), ...)

Arguments

p
probability.
interval
optional, a vector containing the end-points of the interval to be searched by uniroot.
tail
specifies which quantiles should be computed. lower.tail gives the quantile $x$ for which $P[X \le x] = p$, upper.tail gives $x$ with $P[X > x] = p$ and both.ta
mean
the mean vector of length n.
corr
the correlation matrix of dimension n.
sigma
the covariance matrix of dimension n. Either corr or sigma can be specified. If sigma is given, the problem is standardized. If neither corr nor sigm
algorithm
an object of class GenzBretz, Miwa or TVPACK specifying both the algorithm
...
additional parameters to be passed to GenzBretz.

Value

  • A list with four components: quantile and f.quantile give the location of the quantile and the value of the function evaluated at that point. iter and estim.prec give the number of iterations used and an approximate estimated precision from uniroot.

Details

Only equicoordinate quantiles are computed, i.e., the quantiles in each dimension coincide. Currently, the distribution function is inverted by using the uniroot function which may result in limited accuracy of the quantiles.

See Also

pmvnorm, qmvt

Examples

Run this code
qmvnorm(0.95, sigma = diag(2), tail = "both")

Run the code above in your browser using DataLab