generate random numbers according to pdf or cdf
Coded by halleyhit on Aug. 15th, 2018
Email: halleyhit@sjtu.edu.cn or halleyhit@163.com
Syntax
y = randdf(S,D,F)
S - Size of dimension, integer values.
Example: S=10 creates a 10-by-1 array
Example: S=[10,2] creates a 10-by-2 matrix
D - Density function, numeric matrix
Pdf or cdf is described by a matrix, whose size is N-by-2.
Sampling points of pdf or cdf form the second row.
Function value of pdf or cdf form the first row.
F - Flag, 'pdf' or 'cdf'
Example:
x=[-1:0.01:1];% Sampling points
y=2*(x<0).*(x>-0.1)+4*(x<0.5).*(x>0.3);% Function value of pdf
plot(x,y,'black')
r=randdf([10000],[y;x],'pdf'); % generate random numbers
hold on
h=histogram(r);
h.Normalization='pdf';
h.BinWidth=0.01;
h.EdgeColor='none'; % view the pdf of the generated numbers
Cite As
halleyhit (2024). generate random numbers according to pdf or cdf (https://www.mathworks.com/matlabcentral/fileexchange/68492-generate-random-numbers-according-to-pdf-or-cdf), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- AI, Data Science, and Statistics > Statistics and Machine Learning Toolbox > Probability Distributions > Continuous Distributions > Uniform Distribution (Continuous) >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.