R has functions to generate a random number from many standard distribution like uniform distribution, binomial distribution, normal distribution etc.
The full list of standard distributions available can be seen using ?distribution
. Functions that generate random deviates start with the letter r
.
For example, runif()
generates random numbers from a uniform distribution and rnorm()
generates from a normal distribution.
From Uniform Distribution
Random numbers from a normal distribution can be generated using runif()
function.
We need to specify how many numbers we want to generate.
Additionally we can specify the range of the uniform distribution using max
and min
argument.
If not provided, the default range is between 0
and 1
.
Example: Uniform Distribution
> runif(1) # generates 1 random number
[1] 0.3984754
> runif(3) # generates 3 random number
[1] 0.8090284 0.1797232 0.6803607
> runif(3, min=5, max=10) # define the range between 5 and 10
[1] 7.099781 8.355461 5.173133
In the program above, we can also generate given number of random numbers between a range.
From Normal Distribution
Random numbers from a normal distribution can be generated using rnorm()
function.
We need to specify the number of samples to be generated.
We can also specify the mean and standard deviation of the distribution.
If not provided, the distribution defaults to 0
mean and 1
standard deviation.
Example: Normal Distribution
> rnorm(1) # generates 1 random number
[1] 1.072712
> rnorm(3) # generates 3 random number
[1] -1.1383656 0.2016713 -0.4602043
> rnorm(3, mean=10, sd=2) # provide our own mean and standard deviation
[1] 9.856933 9.024286 10.822507
In the program above, we can also generate given number of random numbers between a range.