本文介绍了从二项分布生成相关的随机数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试找到一种方法,可以从几个二项式分布中生成相关的随机数.
I am trying to find a way to generate correlated random numbers from several binomial distributions.
我知道如何使用正态分布(使用MASS::mvrnorm
)来做到这一点,但是我没有找到适用于二项式响应的函数.
I know how to do it with normal distributions (using MASS::mvrnorm
), but I did not find a function applicable to binomial responses.
推荐答案
您可以使用copula
包生成关联的制服,然后使用qbinom
函数将其转换为二项式变量.这是一个简单的示例:
You can generate correlated uniforms using the copula
package, then use the qbinom
function to convert those to binomial variables. Here is one quick example:
library(copula)
tmp <- normalCopula( 0.75, dim=2 )
x <- rcopula(tmp, 1000)
x2 <- cbind( qbinom(x[,1], 10, 0.5), qbinom(x[,2], 15, 0.7) )
现在x2
是一个矩阵,其中2列表示2个相关的二项式变量.
Now x2
is a matrix with the 2 columns representing 2 binomial variables that are correlated.
这篇关于从二项分布生成相关的随机数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!