Combine rand function with exponential cdf
2 views (last 30 days)
Show older comments
I would like to produce random random results from cdf (cumulative distribution function) of exponential distribution. I know that exponential cdf is:
F=1-exp(-x/mu)
how could I combine it with rand to produce random results? Thanks in advance!
0 Comments
Answers (2)
Wayne King
on 10 Oct 2012
Perhaps you're thinking of generating exponentially distributed random numbers based on a uniform (0,1) RV?
x = rand(1000,1);
mu = 2;
y = -mu*log(x);
hist(y)
0 Comments
owr
on 10 Oct 2012
Search in the Statistics Toolbox Documentation for "Inversion Methods"(You can look online if you dont have access to the Toolbox). There is a common trick where you generate uniformly distributed random numbers using "rand", then pass them all through the inverse cdf function for the distribution you are interested in. The documentation even shows an example for the exponential distribution. This requires that you have a function that calculate the inverse cdf value for a given input. If you have Stats, many of these are built in. If you dont, you'll need to write that part yourself.
Here's a link to the 2012a doc:
0 Comments
See Also
Categories
Find more on Random Number Generation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!