# How do I generate a random number with beta distribution?

23 visualizaciones (últimos 30 días)
Ana Carolina da Silva Pacheco el 20 de Abr. de 2021
I have a variable with the PDF:
PDF = C . ((f - LB)/D)^alpha . ((UB - f)/D)^beta
Where:
C = 37337
alpha = 3
beta = 813,21
LB (lower bound) = 60000
UB (upper bound) = 2000000
D = UB - LB = 1940000
How do I generate a random number based on it?
##### 0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

Andrew Newell el 20 de Abr. de 2021
You can use the function betarnd, but you'll need to do some normalizing to get it in the standard form used by MATLAB (see Beta distribution). If you define , then x is in the interval as required, so this should generate a suitable number:
a = alpha+1;
b = beta+1;
r = betarnd(a,b);
your_random_number = r*D+LB;
##### 3 comentariosMostrar 1 comentario más antiguoOcultar 1 comentario más antiguo
Andrew Newell el 20 de Abr. de 2021
Because in MATLAB's definition of the beta distribution, the exponents are and . So that gives you back and .
Ana Carolina da Silva Pacheco el 21 de Abr. de 2021
Got it, thank you, that solved my problem.

Iniciar sesión para comentar.

### Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by