Hello,(adsbygoogle = window.adsbygoogle || []).push({});

I am working on a problem in which I first sample two unknown probabilities, p and q, from Beta distributions, and then I want to sample both of them at the same time from a multivariate Beta distribution.

This is the code that I have for sampling p and q individually from Beta distributions (I have already defined a, b, c, d, x, n, and s):

p=betarnd(a+x,b+n-x);

q=betarnd(c+s,d+x+2*(n-x)-s)

Now I'm trying to figure out how to sample p and q jointly from a multivariate Beta distribution.

I know that the Dirichlet distribution is a generalization of the multivariate Beta distribution, and after searching online, I think that I can sample p and q individually from the Dirichlet distribution by doing the following:

alpha_p = [a+x b+n-x];

alpha_q=[c+s d+x+2*(n-x)-s];

d_p=gamrnd(alpha_p, 1);

theta_p=d_p./sum(d_p);

d_q=gamrnd(alpha_q, 1);

theta_q=d_q./sum(d_q);

This results in 2x1 vectors theta_p and theta_q, with the entries in each vector adding up to 1. I'm letting p equal the first entry of theta_p, and q equal the first entry of theta_q.

I'm not sure if this is the right method for the multivariate Beta distribution, but even if it is,

I still don't know how to sample p and q from the Dirichlet distribution at the same time.

Any help would be much appreciated : )

**Physics Forums | Science Articles, Homework Help, Discussion**

The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

# MATLAB How to write Matlab code for a multivariate Beta distribution

**Physics Forums | Science Articles, Homework Help, Discussion**