rjags模型负二项式似然和伽玛先验

时间:2019-11-12 18:32:26

标签: r jags rjags

我读了我的数据。我制作模型字符串。我把它交了。我收到“节点y [1]中的错误-节点与父母不一致”。

Y=read.table("data.txt",header=T)
Y=Y$Y


model_string <- "model{

# Likelihood:
for( i in 1 : N ) {
y[i] ~ dnegbin( l , r )
}

# Prior:
r ~ dgamma(1,1)
l ~ dgamma(.1,.1)
}"

model <- jags.model(textConnection(model_string), 
                    data = list(y=Y,N=200))

首先,我不知道我的模型是否正确。我什至找不到JAGS的基本文档。实际上,我很ham愧地承认这一点,因为它应该像互联网搜索一样简单,但是我找不到任何文档来告诉我1)JAGS模型是如何建立的或2)什么样的函数/分布/参数是JAGS中可用。我之所以走这么远,是因为我发现有人在做类似的模型。如果有人知道JAGS Wiki或文档,那就太好了。

编辑:如果有人甚至可以告诉我dnegbin的参数是什么,那将有很大的帮助。当我在l中插入rdnegbin(l,r)的随机数时,它“起作用”,因为它为lr绘制了数字,但是我没有提示是否有意义。

1 个答案:

答案 0 :(得分:1)

您可以在JAGS user manual中找到有关dnegbin的信息。

dnegbin的第一个参数必须介于和0到1之间。您可以分配例如均匀分布:

library(rjags)

model_string <- "model{

# Likelihood:
for( i in 1 : N ) {
y[i] ~ dnegbin( l , r )
}

# Prior:
r ~ dgamma(1,1)
l ~ dunif(0,1)
}"

y <- rpois(200, 10)
model <- jags.model(textConnection(model_string), 
                    data = list(y=y, N=length(y)))

您还必须确保y的值是非负整数