How to sample in matlab by multinomial distribution?

2 views (last 30 days)
I know for a random variable x that P(x=i) for each i=1,2,...,100. Then how may I sample x by multinomial distribution, based on the given P(x=i) in matlab?
I am allowed to use matlab build in commend
rand
and
randi
but not
mnrnd.
Thank you!
  2 Comments
dragoon
dragoon on 12 Nov 2015
I use
t = cmusum(P)
command to compute the cdf of P(x=i). Then I use
rand
to find a number between (0,1), and find for what i that t(i)>rand. Then I output x(i).
This is my impression for sampling with a distribution. But I am not sure this is sampling with mutinoimal distribution...

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!