49 votos

Generar Correlaciona Variables Aleatorias Normales

Yo sé que para el $2$-dimensiones de caja: dada una correlación $\rho$ puede generar la primera y la segunda los valores, $ X_1 $$X_2$, a partir de la distribución normal estándar. A partir de ahí hacer $X_3$ una combinación lineal de las dos $X_3 = \rho X_1 + \sqrt{1-\rho^2}\,X_2$, a continuación, tomar $$ Y_1 = \mu_1 + \sigma_1 X_1, \quad Y_2 = \mu_2 + \sigma_2 X_3$$

Así que ahora $Y_1$ $Y_2$ tienen correlación $\rho$.

¿Cómo podría esto ser escalados a $n$ variables? Con la condición de que el final de las variables de satisfacer una determinada matriz de correlación? Supongo que al menos n variables será necesario generó entonces una reasignación a través de una combinación lineal de todos ellos va a ser necesario... pero no estoy seguro de cómo se enfoque.

54voto

eesh Puntos 813

Si usted necesita para generar la $n$ correlaciona Gaussiano distribuido variables aleatorias $$ \bf Y \sim \mathcal N(\bf \mu \Sigma) $$ donde $\textbf{Y} = (Y_1,\dots,Y_n)$ es el vector que se desea simular, $\mu =(\mu_1,\dots, \mu_n)$ el vector de medias y $\Sigma$ dada una matriz de covarianza,

  1. primero se necesita para simular un vector de correlación de Gauss variables aleatorias, $\bf Z $
  2. a continuación, encontrar una raíz cuadrada de $\Sigma$, es decir, una matriz de $\bf C$ tal que $\bf C \bf C^\intercal = \Sigma$.

Su objetivo de vectores está dado por $$ \bf Y = \bf \mu + \bf C \bf Z. $$

Una opción popular para calcular el $\bf C$ es la descomposición de Cholesky.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X