Random Number from Empirical Distribution

Generates random numbers from empirical distribution of data

You are now following this Submission

EMPRAND generates random numbers from empirical distribution of data. This is useful when you do not know the distribution type (i.e. normal or uniform), but you have the data and you want to generate random numbers form that data.
The idea is to first construct cumulative distribution function (cdf) from the given data. Then generate uniform random number and interpolate from cdf.
USAGE:
[xr] = emprand(dist) generates single random number from given vector of data values dist.
[xr] = emprand(dist,m) generates m by m matrix of random numbers.
[xr] = emprand(dist,m,n) generates m by n matrix of random numbers.

Examples:
% Generate 1000 random normal numbers as data for EMPRAND
dist = randn(1000,1);
% Now generate 2000 random numbers from this data
xr = emprand(dist,2000,1);

Cite As

Durga Lal Shrestha (2026). Random Number from Empirical Distribution (https://www.mathworks.com/matlabcentral/fileexchange/7976-random-number-from-empirical-distribution), MATLAB Central File Exchange. Retrieved .

Acknowledgements

Inspired: Probability Transformation Explorer

Categories

Find more on Random Number Generation in Help Center and MATLAB Answers

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0

BSD License
Improvement, bug fixes and simplify the code