mvrnorm                 package: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)

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 'Sigma'. 

empirical: logical. If true, mu and Sigma specify the empirical not
          population mean and covariance matrix. 

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:

     'rnorm'

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))

