Tạo các biến ngẫu nhiên nhị thức tương quan


21

Tôi đã tự hỏi nếu có thể tạo ra các biến nhị thức ngẫu nhiên tương quan theo cách tiếp cận chuyển đổi tuyến tính?

Dưới đây, tôi đã thử một cái gì đó đơn giản trong R và nó tạo ra một số tương quan. Nhưng tôi đã tự hỏi nếu có một cách nguyên tắc để làm điều này?

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 và có thể tương quan với nhau, nhưng chúng sẽ không còn là Binomial nữa. Ví dụ: thì do đó không thể là biến ngẫu nhiên nhị thức. Tôi sẽ đề nghị bạn xem xét phân phối đa quốc gia. Y2X1=X2=1Y1=1.5Yi
knrumsey - Tái lập Monica

1
Câu trả lời ngắn cho câu hỏi là tìm kiếm từ khóa copula, giúp tạo ra các biến phụ thuộc với tỷ lệ lợi nhuận cố định.
Tây An

Câu trả lời:


32

Các biến nhị thức thường được tạo bằng cách tính tổng các biến Bernoulli độc lập. Hãy xem liệu chúng ta có thể bắt đầu với một cặp biến Bernoulli tương quan hay không và làm điều tương tự.(X,Y)

Giả sử là biến Bernoulli (nghĩa là và ) và là biến Bernoulli . Để xác định phân phối chung của họ, chúng ta cần chỉ định tất cả bốn kết hợp kết quả. Viết chúng ta có thể dễ dàng tìm ra phần còn lại từ các tiên đề của xác suất:X(p)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.

Việc đưa công thức này vào công thức cho hệ số tương quan và việc giải sẽ choρ

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

Với tất cả bốn xác suất là không âm, điều này sẽ cung cấp phân phối chung hợp lệ - và giải pháp này tham số hóa tất cả các phân phối Bernoulli hai biến. (Khi , có một giải pháp cho tất cả các mối tương quan có ý nghĩa toán học giữa và ) Khi chúng ta tổng của các biến này, mối tương quan vẫn giữ nguyên - nhưng bây giờ các phân phối biên là Binomial và Binomial , như mong muốn.p=q11n(n,p)(n,q)

Thí dụ

Đặt , , và chúng tôi muốn tương quan là . Giải pháp cho là (và các xác suất khác là khoảng , và ). Dưới đây là một chuỗi hiện thực từ phân phối chung:n=10p=1/3q=3/4ρ=4/5(1)a=0.003367350.2470.6630.0871000

Phân tán

Các đường màu đỏ chỉ phương tiện của mẫu và đường chấm là đường hồi quy. Họ đều gần với giá trị dự định của họ. Các điểm đã được xáo trộn ngẫu nhiên trong hình ảnh này để giải quyết các phần trùng lặp: xét cho cùng, các phân phối Binomial chỉ tạo ra các giá trị tích phân, do đó sẽ có một lượng lớn quá mức.

Một cách để tạo các biến này là lấy mẫu lần từ với xác suất được chọn và sau đó chuyển đổi từng biến thành , mỗi lần thành , mỗi lần thành , và mỗi thành . Tính tổng các kết quả (dưới dạng vectơ) để có được một nhận thức về .n{1,2,3,4}1(0,0)2(1,0)3(0,1)4(1,1)(X,Y)

Đây là một Rthực hiện.

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

Cách tiếp cận này có thể được mở rộng để tạo ra bất kỳ số lượng các biến nhị phân? - để phù hợp với ma trận tương quan đã cho (hoặc gần tối đa để phù hợp với nó)?
ttnphns

1
@ttnphns Có, nhưng các tùy chọn bùng nổ: bảng xác suất phải được xác định bởi tham số cận biên, ràng buộc tổng hợp để thống nhất và (do đó) tham số bổ sung. Rõ ràng bạn sẽ có rất nhiều tự do để chọn (hoặc hạn chế) các tham số đó, theo các thuộc tính đa biến bạn muốn tạo. Ngoài ra, một cách tiếp cận tương tự có thể được sử dụng để tạo các biến Binomial tương quan với các giá trị khác nhau của các tham số " " của chúng. Parvin: Tôi tin rằng "khi chúng ta tổng hợp của các biến này" giải thích rõ ràng những gì đại diện. 2kk2kk1nnn
whuber

Đây là một kết quả tốt đẹp. Chỉ để chọn một chút trong câu đầu tiên của bạn. Để có được một nhị thức từ các biến Bernoulli độc lập, chúng không cần phải có cùng p? Điều này không ảnh hưởng đến những gì bạn đã làm vì nó chỉ là một động lực để bạn tiếp cận.
Michael R. Chernick

1
@Michael Cảm ơn bạn - bạn hoàn toàn đúng. Một lý do khác không liên quan đến phương pháp được nêu ở đây là phương pháp này vẫn liên quan đến việc tính tổng các biến Bernoulli với một tham số chung: tham số là cho tất cả các biến và cho tất cả các biếnĐể giữ cho bài viết ngắn gọn một cách hợp lý, tôi đã không trình bày biểu đồ của các bản phân phối cận biên để chứng minh rằng chúng thực sự là Binomial (nhưng tôi thực sự đã làm điều đó trong phân tích ban đầu của mình chỉ để đảm bảo rằng chúng đang hoạt động!). pXqY
whuber

@whuber Cách tiếp cận đẹp! Bạn có thể vui lòng cho tôi biết nếu có bất kỳ giấy tờ nào tôi có thể tham khảo ??
T Nick
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.