问题描述
我正在尝试从1到5000的分类分布中采样两个参数(先前),theta [1]和theta [2],并要求theta1 我已经尝试过(其中包括): 其中n = 5000
以便从theta1到n的分类分布中对theta2进行采样。 错误是:未知变量theta [1]。 任何帮助将不胜感激。theta[1] ~ dcat(p1[])
p1[1:n] <- 1/n
theta[2] ~ dcat(p2[])
pi2[1:theta[1]] <- 0
pi2[sum(theta[1],1):n] <- 1/sum(n,-pi1)
解决方法
如果在带有n=5000
的分类变量中,唯一的要求是theta1
theta2,则可以使用order()
函数:
theta.star[1] ~ dcat(p1[])
theta.star[2] ~ dcat(p1[])
theta <- order(theta.star)
order()
函数是在JAGS中施加顺序约束的一种方法。