상관 이항 랜덤 변수 생성


21

선형 변환 접근법에 따라 상관 랜덤 이항 변수를 생성 할 수 있는지 궁금합니다.

아래에서 R에서 간단한 것을 시도하고 상관 관계를 생성합니다. 그러나 이것을 수행하는 원칙적인 방법이 있는지 궁금합니다.

X1 = rbinom(1e4, 6, .5) ; X2 = rbinom(1e4, 6, .5) ;  X3 = rbinom(1e4, 6, .5) ; a = .5

Y1 = X1 + (a*X2) ; Y2 = X2 + (a*X3) ## Y1 and Y2 are supposed to be correlated

cor(Y1, Y2)

2
Y1Y2 는 서로 관련이있을 수 있지만 더 이상 이항식 이 아닙니다. 예를 들어, X1=X2=1 , Y1=1.5 이므로 Yi 는 이항 랜덤 변수가 될 수 없습니다. 다항식 분포를 살펴볼 것을 제안합니다.
knrumsey-복직 모니카

1
질문에 대한 짧은 대답은 키워드를 찾는 것입니다. 키워드 copula는 고정 마진으로 종속 변수를 생성하는 데 도움이됩니다.
Xi'an

답변:


32

이항 변수는 일반적으로 독립적 인 Bernoulli 변수를 합산하여 생성됩니다. 상관 관계가있는 Bernoulli 변수 쌍 하여 동일한 작업을 수행 할 수 있는지 살펴 보겠습니다 .(X,Y)

가정 베르누이 인 (즉, 가변 및 )와 베르누이이다 변수. 공동 분포를 찾기 위해서는 4 가지 결과 조합을 모두 지정해야합니다. 쓰면 확률의 공리에서 나머지를 쉽게 알아낼 수 있습니다 :X(p)Pr ( X = 0 ) = 1 p Y ( q )Pr(X=1)=pPr(X=0)=1pY(q)Pr ( (

Pr((X,Y)=(0,0))=a,
Pr((X,Y)=(1,0))=1qa,Pr((X,Y)=(0,1))=1pa,Pr((X,Y)=(1,1))=a+p+q1.

이것을 상관 계수 에 대한 공식에 연결 하고 풀면a = ( 1 p ) ( 1 q ) + ρ ρ

(1)a=(1p)(1q)+ρpq(1p)(1q).

네 가지 확률이 모두 음수가 아닌 경우, 유효한 합동 분포를 얻게되며이 솔루션은 모든 이변 량 Bernoulli 분포를 모수화합니다. ( 인 경우 과 사이의 모든 수학적으로 의미있는 상관 관계에 대한 솔루션이 있습니다.) 이 변수의 을 합산 하면 상관 관계는 동일하게 유지되지만 한계 분포는 이항 이고 필요에 따라 이항 .- 1 (1) N ( N , P ) ( N , Q )p=q11n(n,p)(n,q)

하자 , , , 우리는 될 수있는 상관 관계 싶습니다 . 상기 용액에 이고 (다른 확률 주위 , 및 ). 관절 분포에서 실현을 그린 그림입니다 ., p는 = 1 / 3 Q는 = 3 / 4 ρ = - 4 / 5 ( 1 ) A는 = 0.00336735 0.247 0.663 0.087 1,000n=10p=1/3q=3/4ρ=4/5(1)a=0.003367350.2470.6630.0871000

산포도

빨간색 선은 표본의 평균을 나타내며 점선은 회귀선입니다. 그것들은 모두 의도 한 값에 가깝습니다. 이 이미지에서 점들은 무작위로 겹침을 해결하여 중첩을 해결했습니다. 결국 이항 분포는 정수 값만 생성하므로 과도하게 많은 양의 플로팅이 발생합니다.

이러한 변수를 생성하는 한 가지 방법 은 선택한 확률 로 에서 번 을 샘플링 한 다음 각 을 , 각 를 , 각각 에 , 각 를 넣습니다 . 결과를 벡터로 합하여 한 번 실현 합니다.{ 1 , 2 , 3 , 4 } 1 ( 0 , 0 ) 2 ( 1 , 0 ) 3 ( 0 , 1 ) 4 ( 1 , 1 ) ( X , Y )n{1,2,3,4}1(0,0)2(1,0)3(0,1)4(1,1)(X,Y)

암호

R구현 은 다음과 같습니다 .

#
# Compute Pr(0,0) from rho, p=Pr(X=1), and q=Pr(Y=1).
#
a <- function(rho, p, q) {
  rho * sqrt(p*q*(1-p)*(1-q)) + (1-p)*(1-q)
}
#
# Specify the parameters.
#
n <- 10
p <- 1/3
q <- 3/4
rho <- -4/5
#
# Compute the four probabilities for the joint distribution.
#
a.0 <- a(rho, p, q)
prob <- c(`(0,0)`=a.0, `(1,0)`=1-q-a.0, `(0,1)`=1-p-a.0, `(1,1)`=a.0+p+q-1)
if (min(prob) < 0) {
  print(prob)
  stop("Error: a probability is negative.")
}
#
# Illustrate generation of correlated Binomial variables.
#
set.seed(17)
n.sim <- 1000
u <- sample.int(4, n.sim * n, replace=TRUE, prob=prob)
y <- floor((u-1)/2)
x <- 1 - u %% 2
x <- colSums(matrix(x, nrow=n)) # Sum in groups of `n`
y <- colSums(matrix(y, nrow=n)) # Sum in groups of `n`
#
# Plot the empirical bivariate distribution.
#
plot(x+rnorm(length(x), sd=1/8), y+rnorm(length(y), sd=1/8),
     pch=19, cex=1/2, col="#00000010",
     xlab="X", ylab="Y",
     main=paste("Correlation is", signif(cor(x,y), 3)))
abline(v=mean(x), h=mean(y), col="Red")
abline(lm(y ~ x), lwd=2, lty=3)

이 방법을 여러 개의 이진 변수를 생성하도록 확장 할 수 있습니까? -주어진 상관 관계 행렬을 맞추기 위해 (또는 최대한 맞추기 위해)
ttnphns 2016 년

1
@ttnphns 예, 그러나 옵션이 폭발합니다. 확률 테이블은 한계 매개 변수, 합집합 제약 조건 및 (따라서) 추가 매개 변수에 의해 결정되어야합니다 . 만들려는 다변량 속성에 따라 이러한 매개 변수를 자유롭게 선택 (또는 제한) 할 수 있습니다. 또한 유사한 접근 방식을 사용하여 서로 다른 " "매개 변수 값을 가진 상관 이항 변수를 생성 할 수 있습니다 . Parvin는 "우리가 정리해 때 저는 믿습니다 이 변수의"명백하게에 대해 설명 나타냅니다. k 2 kk 1 n n n2kk2kk1nnn
whuber

이것은 좋은 결과입니다. 첫 문장에서 조금만 고르세요. 독립 Bernoulli 변수에서 이항을 구하려면 같은 p를 가질 필요가 없습니까? 접근에 대한 동기 부여이므로 수행 한 작업에는 영향을 미치지 않습니다.
Michael R. Chernick

1
@Michael 감사합니다. 당신이 옳습니다. 여기에 설명 된 방법과 관련이없는 또 다른 이유는이 방법에 여전히 Bernoulli 변수를 공통 매개 변수와 합산하는 것입니다. 매개 변수는 모든 변수에 대해 이고 모든 변수에 대해 입니다 . 게시물을 합리적으로 짧게 유지하기 위해 실제로 분포가 이항임을 증명하기 위해 한계 분포의 히스토그램을 제시하지 않았습니다 (그러나 실제로는 원래 분석에서 실제로 작동하는지 확인했습니다!). X q YpXqY
whuber

@ whuber 멋진 접근 방식! 내가 참조 할 수있는 용지가 있으면 알려주세요.
T Nick
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.