1
$\begingroup$

Let a correlation matrix $\Sigma$ be given. I would like to sample from the n-dimensional multivariate beta distribution where each marginal distribution is known and the variables are correlated as prescribed by $\Sigma$. Is there a way to do this, preferably one that is not very expensive computationally?

There is a lot of info on how to solve similar problems for the normal distribution (see link to Wikipedia with a well-known procedure, or this question or this question) and there are some questions on how to do this for the special case of $n=2$ (for example this). But I cannot find information on this specific question here, neither on Google or SE.

$\endgroup$
  • $\begingroup$ There isn't a single multivariate beta, but any number of ways to make multivariate distributions with beta margins. Are you talking about a Dirichlet distribution or something else? $\endgroup$ – Glen_b -Reinstate Monica Jun 25 '17 at 1:41
  • $\begingroup$ @Glen_b Maybe I'm misunderstanding the terminology here, but by the n-dimensional multivariate beta distribution, I just mean a vector $x$ of length $n$ in which each element is a random variable that follows the beta distribution. Is that inaccurate? $\endgroup$ – Sid Jun 25 '17 at 16:19
  • $\begingroup$ There's an infinity of distributions with Beta margins. Are you indifferent to what the joint distribution is as long as it has beta margins and you can get approximately the desired correlations? $\endgroup$ – Glen_b -Reinstate Monica Jun 25 '17 at 16:46
  • 1
    $\begingroup$ Magnussen (2004) does this using a ratio of Gamma distributions. Magnussen, Steen. 2004. An algorithm for generating positively correlated Beta-distributed random variables with known marginal distributions and a specified correlation, Computational Statistics & Data Analysis, 46, 397–406. $\endgroup$ – SecretAgentMan Sep 25 '18 at 23:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.