İlişkili binom rasgele değişkenler oluşturma


21

Doğrusal bir dönüşüm yaklaşımı sonrasında ilişkili rasgele binom değişkenleri oluşturmanın mümkün olup olmadığını merak ediyordum.

Aşağıda, R'de basit bir şey denedim ve bazı korelasyonlar üretti. Ama bunu yapmanın ilkeli bir yolu olup olmadığını merak ediyordum?

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
Y1 veY2 korelasyon olabilir, ama bunlar artık Binom olacaktır. Örnek,X1=X2=1 daha sonraY1=1.5 , dolayısıylaYi olamaz binom rastgele değişkenler. Multinom dağılımına bakmanızı öneririm.
knrumsey - Monica'yı

1
Sorunun kısa cevabı copula, sabit marjlı bağımlı değişkenler oluşturulmasına yardımcı olan anahtar kelimeyi aramaktır .
Xi'an

Yanıtlar:


32

Binom değişkenleri genellikle bağımsız Bernoulli değişkenleri toplanarak oluşturulur. Bakalım bir çift ilişkili Bernoulli değişkeni ile başlayıp (X,Y)aynı şeyi yapabilir miyiz .

X(p)Pr ( X = 0 ) = 1 - p Y ( q ) Pr ( ( X , Y ) = ( 0 , 0 ) ) = a , Pr ( ( X , Y ) = ( 1 , 0 ) ) = 1 - q - a ,Pr(X=1)=pPr(X=0)=1pY(q)

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.

Bunu, korelasyon katsayısı için formüle ve çözmeka = ( 1 - p ) ( 1 - q ) + ρ ρ

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

Dört olasılık da negatif değilse, bu geçerli bir ortak dağıtım verecektir - ve bu çözüm tüm iki değişkenli Bernoulli dağılımlarını parametrelendirir . (Zaman , tüm matematiksel anlamlı korelasyon arasında bir çözüm vardır ve biz toplamı olduğunda.) ama şimdi marjinal dağılımlar binom - bu değişkenlerin, korelasyon aynı kalır ve Binom , istendiği gibi.- 1 1 n ( n , p ) ( n , q )p=q11n(n,p)(n,q)

Misal

Let , , , ve olmak korelasyon istiyorum . Çözüm olup (ve diğer olasılıklar etrafında , , ve ). İşte ortak dağıtımdan gerçekleşmenin bir grafiği :p = 1 / 3 q = 3 / 4 ρ = - 4 / 5 ( 1 ) , bir = 0,00336735 0.247 0.663 0.087 1.000n=10p=1/3q=3/4ρ=4/5(1)a=0.003367350.2470.6630.0871000

Dağılım grafiği

Kırmızı çizgiler numunenin araçlarını gösterir ve noktalı çizgi regresyon çizgisidir. Hepsi amaçlanan değerlerine yakındır. Çakışmaları çözmek için noktalar bu görüntüde rastgele titriyor: Sonuçta, Binom dağılımları sadece integral değerler üretiyor, bu yüzden çok fazla fazla çizme olacak.

Bu değişkenler üretilmesinin bir yolu, örnek için den kez seçilen olasılıkları ile ve daha sonra her bir dönüştürme içine , her biri içine , her biri içine ve her içine . nin bir gerçekleştirilmesini elde etmek için sonuçları (vektörler olarak) toplayın .{ 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)

kod

İşte bir Ruygulama.

#
# 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)

Bu yaklaşım herhangi bir sayıda ikili değişken üretmek için genişletilebilir mi? - verilen korelasyon matrisini sığdırmak (veya sığdırmak için maksimum yakın)?
ttnphns

1
@ttnphns Evet, ancak seçenekler patlıyor: olasılık tablosu marjinal parametreleri, toplam-birlik kısıtı ve (bu nedenle) ek parametreleri ile belirlenmelidir. Açıkçası, oluşturmak istediğiniz çok değişkenli özelliklere göre bu parametreleri seçme (veya sınırlama) için çok fazla özgürlüğe sahip olacaksınız. Ayrıca benzer bir yaklaşım, " " parametrelerinin farklı değerlerine sahip ilişkili Binom değişkenlerini üretmek için kullanılabilir . Parvin: "Biz özetlemek zaman inanıyorum bu değişkenlerin" açık bir şekilde açıklar temsil eder. k 2 k - k - 1 n n n2kk2k-k-1nnn
whuber

Bu güzel bir sonuç. Sadece ilk cümlede bir parça seçmek için. Bağımsız Bernoulli değişkenlerinden bir binom elde etmek için aynı p'ye sahip olmaları gerekmez mi? Bunun yaptığınız şey üzerinde hiçbir etkisi yoktur, çünkü bu sadece sizin yaklaşmanız için bir motivasyondur.
Michael R.Chickick

1
@Michael Teşekkür ederim - oldukça haklısın. Burada genel hatları anlatılan yönteme üzerinde hiçbir etkiye sahip diğer bir nedeni, bu yöntem, halen yaygın bir parametre Bernoulli değişkenler toplanmasıyla olduğunu içerir: parametredir tüm değişkenler ve için tüm değişkenleri. Postayı makul bir şekilde kısa tutmak için, gerçekten Binom olduklarını göstermek için marjinal dağılımların histogramlarını sunmadım (ama aslında orijinal analizimde sadece çalıştıklarından emin olmak için yaptım!). X q YpXqY
whuber

@whuber Güzel yaklaşım! Eğer başvurabileceğim herhangi bir kağıt varsa lütfen bana bildirin ??
T Nick
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.