Como funciona a fórmula para gerar variáveis ​​aleatórias correlacionadas?

19

Se tivermos 2 variáveis ​​aleatórias normais e não correlacionadas , podemos criar 2 variáveis ​​aleatórias correlacionadas com a fórmulaX1,X2

Y=ρX1+1ρ2X2

e então terá uma correlação ρ com X 1 .YρX1

Alguém pode explicar de onde vem essa fórmula?

Lanza
fonte
1
Uma extensa discussão sobre esse e outros problemas relacionados aparece na minha resposta em stats.stackexchange.com/a/71303 . Entre outras coisas, deixa claro que (1) a suposição de Normalidade é irrelevante e (2) você precisa fazer suposições adicionais: as variações de e X 2 devem ser iguais para que a correlação de Y com X 1 seja ρ . X1X2YX1ρ
whuber
Link muito interessante. Não sei se entendi o que você quer dizer com normalidade sendo irrelevante. Se ou X 2 não é normal, e torna-se mais difícil controlar a densidade de Y por meio do algoritmo de Kaiser-Dickman. Essa é toda a razão para algoritmos especializados gerarem dados correlacionados não normais (por exemplo, Headrick, 2002; Ruscio & Kaczetow, 2008; Vale & Maurelli, 1983). Por exemplo, imagine que seu objetivo seja gerar X ~ normal, Y ~ uniforme , com ρ = 0,5. Usando X 2 ~ resultados uniformes em Y que não é uniforme ( Y acaba por ser uma combinação linear de um normal e uniforme).X1X2YXYρX2YY
Anthony
@ Anthony A pergunta é apenas sobre correlação , que é puramente uma função do primeiro e do segundo momento. A resposta não depende de outras propriedades das distribuições. O que você está discutindo é um assunto completamente diferente.
whuber

Respostas:

17

Suponha que você queira encontrar uma combinação linear de e X 2 de modo queX1X2

corr(αX1+βX2,X1)=ρ

Observe que, se você multiplicar e β pela mesma constante (diferente de zero), a correlação não será alterada. Assim, vamos adicionar uma condição para preservar a variação: var ( α X 1 + β X 2 ) = var ( X 1 )αβvar(αX1+βX2)=var(X1)

Isso é equivalente a

ρ=cov(αX1+βX2,X1)var(αX1+βX2)var(X1)=αcov(X1,X1)=var(X1)+βcov(X2,X1)=0var(αX1+βX2)var(X1)=αvar(X1)α2var(X1)+β2var(X2)

Assumindo que ambas as variáveis ​​aleatórias tenham a mesma variância (essa é uma suposição crucial!) ( ), obtemosvar(X1)=var(X2)

ρα2+β2=α

Existem muitas soluções para essa equação, então é hora de recuperar a condição de preservação de variação:

var(X1)=var(αX1+βX2)=α2var(X1)+β2var(X2)α2+β2=1

E isso nos leva a

α=ρβ=±1ρ2

UPD . Em relação à segunda pergunta: sim, isso é conhecido como clareamento .

Artem Sobolev
fonte
9

A equação é uma forma bivariada simplificada de decomposição de Cholesky . Essa equação simplificada às vezes é chamada de algoritmo de Kaiser-Dickman (Kaiser e Dickman, 1962).

Observe que e X 2 devem ter a mesma variação para que esse algoritmo funcione corretamente. Além disso, o algoritmo é normalmente usado com variáveis ​​normais. Se X 1 ou X 2 não são normais, Y pode não ter a mesma forma distributiva como X 2 .X1X2X1X2YX2

Referências:

Kaiser, HF e Dickman, K. (1962). Matrizes de pontuação de amostra e população e matrizes de correlação de amostra de uma matriz de correlação populacional arbitrária. Psychometrika, 27 (2), 179-182.

Anthony
fonte
2
I suppose you don't need standardized normal variables, just having the same variance should be enough.
Artem Sobolev
2
No, the distribution of Y is not a mixture distribution as you claim.
Dilip Sarwate
Point taken, @Dilip Sarwate. If either X1 or X2 is nonnormal, then Y becomes a linear combination of two variables that might not result in the desired distribution. This is the reason for specialized algorithms (instead of Kaiser-Dickman) for generated non-normal correlated data.
Anthony
3

Correlation coefficient is the cos between two series if they are treated as vectors (with nth data point being nth dimension of a vector). The above formula simply creates a decomposition of a vector into its cosθ, sinθ components (with respect to X1,X2).
if ρ=cosθ , then 1ρ2=±sinθ.

Because if X1,X2 are uncorrelated, the angle between them is a right angle (ie, they can be considered as orthogonal, albeit non-normalized, basis vectors ).

Dmitry Rubanovich
fonte
2
Welcome to our site! I believe your post will get more attention if you mark up the mathematical expressions using TEX: enclose them between dollar signs. There's help available when you're editing.
whuber