Reputation: 565
How do we generate data points following a Gaussian (normal) distribution in R?
Suppose I want to generate points in 2d (or higher dimensional) space that follow a Gaussian distribution. How do I do this using R?
Upvotes: 4
Views: 7208
Reputation: 121057
Gaussian distributions are for one dimensional random variables. You can generate them using rnorm
.
rnorm(100, mean = 3, sd = 2)
For the higher dimensional case you want a multivariate normal distribution instead. Try mvrnorm
in the MASS
package, or rmvnorm
in the mvtnorm
package.
library(mvtnorm)
rmvnorm(100, mean = c(3, 5), sigma = matrix(c(1, 0.5, 0.5, 2), nrow = 2))
Further reading: ?Distributions
and the CRAN Task View on distributions.
Upvotes: 8
Reputation: 11956
One dimensional: ?rnorm
. More dimensions: install and load package mvtnorm and use rmvnorm()
.
Upvotes: 4