在一个实验中,参与者可以使用策略X和Y的组合来解决问题。 θ是X的权重(范围从0到1,以Beta分布),可以某种方式从人类数据中推断出来(也许这里不需要详述)。
在我读过的a paper(第117页)1中,作者通过平均值和标准偏差重新参数化了θ的Beta分布。如何在JAGS中实现这一点?以下是我的尝试,我不确定它是否正确。如果没有,我想知道我应该做些什么。
model{
for (i in 1:n) { # for each person
theta[i] ~ dbeta(alpha, beta) # theta values come from data
}
alpha <- mu * phi
beta <- (1-mu) * phi
phi ~ dgamma(.1,.1)
mu ~ dunif(0,1)
}
提前致谢,如果有任何细节需要我加入,请告诉我。
答案 0 :(得分:0)
如果我理解正确,我认为你的JAGS模型中存在对theta的误解。从你的问题来看,这听起来像你在想这个参数?但是在你的模型中,你有theta作为数据(抱歉,如果我误解你)。但无论如何,你通过重新定义alpha和beta来正确地重新参数化β分布的均值和方差,这样,使用上面的代码,你将得到E(x)= mu * phi和方差(x)= mu( 1-MU)/(PHI + 1)。
答案 1 :(得分:0)
您是否正在寻找类似的东西?
a <- mu / (sd * sd)
b <- (1-mu) / (sd * sd)
theta ~ dbeta(a, b)
其中,mu是平均值,sd是标准偏差。