如何构建模型并在 R 代码中找到贝叶斯模型的 beta?
How to structure the model and find the beta for a Bayesian model in R code?
我正在尝试构建 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
.
听起来你在问如何在 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 应该是一个数据框,而不是您目前所说的矩阵。这使用(相对标准的)相关参数的最少信息先验,但强烈建议编辑为您创建的模型文件,以便根据需要调整先验。我不知道你所说的 'finding the beta' 是什么意思,除非你指的是固定效应的截距和系数?
如果这没有帮助,那么我认为您需要为您的问题添加更多信息 - 例如有关您的预测变量 X1-3 的更多信息、您想要准确实现的目标以及显示前几个你的数据行也不会受到伤害。
我正在尝试构建 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
.
听起来你在问如何在 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 应该是一个数据框,而不是您目前所说的矩阵。这使用(相对标准的)相关参数的最少信息先验,但强烈建议编辑为您创建的模型文件,以便根据需要调整先验。我不知道你所说的 'finding the beta' 是什么意思,除非你指的是固定效应的截距和系数?
如果这没有帮助,那么我认为您需要为您的问题添加更多信息 - 例如有关您的预测变量 X1-3 的更多信息、您想要准确实现的目标以及显示前几个你的数据行也不会受到伤害。