我正在尝试构建一个Jags模型,并找到beta以及贝叶斯数据分析的先验。
我的模型有3个预测变量x1, x2, x3
,结果是伯努利分布变量 Y 。
如何为影响结果Y的三个预测因子定义先验概率 P(Y=1|X1), P(Y=1|X2), P(Y=1|X3)
?
我的数据基于矩阵nXr, n=1920 r=4 columns
X1, X2, X3 and Y
。
答案 0 :(得分:1)
听起来您在询问如何在JAGS中构建GLM。如果是这样,那么最简单的方法可能就是使用runjags包中的template.jags函数来为你做这样的事情:
library('runjags')
template.jags(Y ~ X1 + X2 + X3, data=nXr, family='binomial', write.data=FALSE)
## Inspect and edit the JAGSmodel.txt file ##
results <- run.jags("JAGSmodel.txt", data=nXr)
请注意,nXr应该是一个数据框,而不是您现在所说的矩阵。这对于相关参数使用(相对标准的)最低信息量的先验,但是编辑为您创建的模型文件以便根据需要调整先验是非常明智的。我不知道你的意思是找到beta&#39;除非你的意思是截距和固定效应的系数?
如果这没有帮助,那么我认为您需要在问题中添加更多信息 - 例如有关您的预测器X1-3的更多信息,您要完全实现的目标,以及显示前几个您的数据行也不会受到影响。