mvrnorm {MASS} | R Documentation |
Simulate from a Multivariate Normal Distribution
Description
Produces one or more samples from the specified multivariate normal distribution.
Usage
mvrnorm(n = 1, mu, Sigma, tol = 1e-6, empirical = FALSE, EISPACK = FALSE)
Arguments
n |
the number of samples required. |
mu |
a vector giving the means of the variables. |
Sigma |
a positive-definite symmetric matrix specifying the covariance matrix of the variables. |
tol |
tolerance (relative to largest variance) for numerical lack
of positive-definiteness in |
empirical |
logical. If true, mu and Sigma specify the empirical not population mean and covariance matrix. |
EISPACK |
logical: values other than |
Details
The matrix decomposition is done via eigen
; although a Choleski
decomposition might be faster, the eigendecomposition is
stabler.
Value
If n = 1
a vector of the same length as mu
, otherwise an
n
by length(mu)
matrix with one sample in each row.
Side Effects
Causes creation of the dataset .Random.seed
if it does
not already exist, otherwise its value is updated.
References
B. D. Ripley (1987) Stochastic Simulation. Wiley. Page 98.
See Also
Examples
Sigma <- matrix(c(10,3,3,2),2,2)
Sigma
var(mvrnorm(n = 1000, rep(0, 2), Sigma))
var(mvrnorm(n = 1000, rep(0, 2), Sigma, empirical = TRUE))