# Estimation of and sampling from multivariate distributions with Gaussian copula

After reading some references about this topic, I compiled the following scheme to estimate and sample from multivariate distributions with Gaussian copula. I am not fully sure, if this is correct or if I might have missed something important. Any advice or comment is highly welcome.

I assume unimodal distributions and use the Johnson distribution family for my $n$ marginal distributions with CDFs $F_1, \dots, F_n$. $\Phi$ denotes the CDF of the standard normal distribution.

### Estimation

1. Get $m$ sample vectors $X_j = [X_{j, 1}, \dots, X_{j, n}]^T$ with $j = 1, \dots, m$
2. Estimate marginal distribution CDFs $F_1, \dots, F_n$ by quantile matching
3. Convert samples $Y_j = [F_1(X_{j, 1}), \dots, F_n(X_{j, n})]^T$
4. Estimate copula correlation matrix $C = \text{corr}([Y_1, \dots, Y_m]^T)$

### Sampling

1. Apply Cholesky decomposition on copula correlation matrix $A = \text{chol}(C)$
2. Generate an uniform and independent samples vector $U_i \sim \mathbb{U}(0, 1)$ from Sobol sequence
3. Convert samples $N_i = \Phi^{-1}(U_i)$
4. Set $N_c = A N_i$
5. Convert samples $U_c = \Phi(N_c)$
6. Get correlated sample vector $X_c = [F_1^{-1}(U_{c, 1}), \dots, F_n^{-1}(U_{c, n})]^T$
• An easier way might be as follows: 1.) Sample from a Gaussian copula with the desired correlation matrix, using a function such as copularnd in Matlab or one of the methods supplied in R's [copula] (cran.r-project.org/web/packages/copula/copula.pdf) package. The number of samples you generate is your $\mathbf{U}$ matrix of dimensions $d \times n$, where $d$ is the dimensionality and $n$ is # of samples. 2.) Invert each $U_i$ with $F_i^{-1}$ to generate your correlated samples with marginals following the Johnson distribution. – Kiran K. Jan 20 '17 at 18:28
• Thank you for this comment. I use Matlab, so I could try copularnd. But I think, I would be limited to pseudo-random numbers and could not go for a quasi-random generator, right? – JotWe Jan 21 '17 at 10:19