假设我想创建 50 个长度为 100 的二进制变量,每个变量都相互关联。
因为我创建了一个具有指定 rho 的相关矩阵:
cor.mat <- matrix(0.2,nrow=50, ncol=50)
diag(cor.mat) <- 1
接下来我用
rmvbin
:library(bindata)
rmvbin<-rmvbin(100, margprob=x, bincorr=cor.mat)
但是,我不确定如何计算 margprob 参数。有人可以帮忙吗?
它应该是每行和每列中概率总和的向量吗?
最佳答案
margprob
应该只是一个重复向量,其概率为任何单个二元变量为 1,与其余变量无关;调用这个值 p
.假设相同分布的变量(考虑到您的相关矩阵似乎是这种情况),margprob=rep(p,50)
.
它不应该是每行和每列中概率总和的向量,因为相关矩阵不能用于确定边际概率。如果您无法确定随机变量的边际概率是多少,则必须为问题提供更多背景信息,这将是一个更适合 math.stackexchange.com 的问题。 .
关于r - 如何计算生成相关二元变量的边际概率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18872628/