Picking random variables with different probablities

I have a variable range lets say x = 3:6.
I want to pick 200 random numbers from this range (it could be any decimal number in the range). But I want these numbers to be picked with certain probability.
For example 20% of the numbers from the range 3:4,
50% of the numbers from the range 4:5,
and rest 30% of the numbers from the range 5:6.
How can i do this?
Thanks.

 Risposta accettata

Ameer Hamza
Ameer Hamza il 22 Mar 2020
Modificato: Ameer Hamza il 22 Mar 2020
Try this
a = randsample(3:5, 10000, true, [0.2 0.5 0.3]) + rand(1, 10000);
It will generate 10000 random numbers with given distribution. Check their distribution with
histogram(a, [3 4 5 6])

2 Commenti

Thank you!!!
This is perfect. It did not click me that I can use rand(1) to add with numbers generated by randsample.
Thank you so much!!
Glad to be of Help.

Accedi per commentare.

Più risposte (0)

Prodotti

Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by