Friday, July 8, 2016

monte carlo - generating a correlated RV which has the same correlation to existing samples


Suppose I have generated a collection of correlated sequences of samples $(S_i)_{i=1}^{n}$ from random variables $\mathbf{\underline{x}} = x_i$.


Let's fix a sequence of reals $(\sigma_i)_{i=0}^{n}$. Suppose that I want to generate a sample $S_{i+1}$ such that $Correlation(S_{k},S_{i+1}) = \sigma_k$ for any k.


So basically I want to append one result on to collection of correlated samples and dictate what its correlation to each of the pre-existing ones should be. What are good ways of doing this?



Answer



As Richard says, this is really hard to do in a general setting. But if we make extra assumptions about the distribution of the variables, it might be doable.


Assume for instance that your variables are following a multivariate normal distribution. This is interesting because



  • The distribution is characterized exclusively by the means, variances and covariances.


  • The marginals of the distribution are again multivariate normal.

  • There is a simple formula for the conditional distributions of variables that are multivariate normal.


Using the conditional distribution, you could easily generate a new sample $S_{n+1}$ assuming that the sample is from a random variable, part of a $n+1$-size multivariate normal set of random variables.


No comments:

Post a Comment

technique - How credible is wikipedia?

I understand that this question relates more to wikipedia than it does writing but... If I was going to use wikipedia for a source for a res...