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?
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.
One dimensional: ?rnorm
. More dimensions: install and load package mvtnorm and use rmvnorm()
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With