Inverse transform sampling method
The
inverse transform sampling method is a method of sampling a number at
random from any
probability distribution, given its
cumulative distribution function (cdf).
The problem that the inverse transform sampling method solves is as follows:
- Let X be a random variable whose distribution can be described by the cdf d(x).
- We want to generate values of x which are distributed according to this distribution.
Many
programming languages have the ability to generate
pseudo-randomnumbers which are effectively distributed according to the standard
uniform distribution. If a random variable has that distribution, then the probability of its falling within any subinterval (
a,
b) of the interval from 0 to 1 is just the length
b -
a of that subinterval.
The inverse transform sampling method works as follows:
- Generate a random number from the standard uniform distribution; call this u.
- Compute the value for x which has the associated cdf value u; call this xchosen.
- Take xchosen to be the random number drawn from the distribution described by d(x).
The following diagram may help the reader to visualise how the method works:
Sampling using the inverse transform method
See also
The rejection sampling method.