从Dirichlet多项式分布示像

问题描述 投票:0回答:1
我想创建一个1000行和91列的矩阵,填充了由Dirichlet多项式分布生成的整数。

到目前为止,我所取得的成就是可以创建一个矩阵(带91列的1行):

library(extraDistr) mypar <- c(0.1,0.1,0.2,0.3,0.1,0.2) mysim <- rdirmnom(91, size=1, mypar) #changing 1 to item number mysim[,2] <- ifelse(mysim[,2]==1,2,0) mysim[,3] <- ifelse(mysim[,3]==1,3,0) mysim[,4] <- ifelse(mysim[,4]==1,4,0) mysim[,5] <- ifelse(mysim[,5]==1,5,0) mysim[,6] <- ifelse(mysim[,6]==1,6,0) tokeep <- which(mysim>0) mychoice.sim <- mysim[tokeep] rep.y <- t(matrix(mychoice.sim))

	
r matrix multinomial
1个回答
0
投票

mypar<-c(0.1,0.1,0.2,0.3,0.1,0.2) sampfun <- function() apply(extraDistr::rdirmnom(91, size=1, mypar)==1, MARGIN=1, which) M <- t(replicate(1000, sampfun()))

	
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.