“重新思考”程序包-使标度对数正态分布以实现伽马分布

时间:2019-02-22 20:53:45

标签: r

我正在创建一个模型,使用重新思考软件包从树木的高度预测树木的年龄。在我的数据集中,年龄是伽玛分布的。为了适应伽玛可能性,我使用map()制作了此模型:

 fit2<- map(
  alist(
    age ~ dgamma2(mu, scale),
    log(mu) <- b + m*height,
    b ~ dnorm(16.3759, 10),
    m ~ dnorm(10.9808, 10),
    scale ~ dexp(2)
  ),
  data = d
)

但是,我担心“比例”不是正态分布的,因此我无法使用extract.samples()来对多维后验进行采样。我相信,如果我记录了scale参数,它将变为正常,因此可以使用extract.samples()

如何修改上面的代码来做到这一点?我在其他使用dbetabinom()的示例中看到了这一点,但从未使用过dgamma2()

感谢所有帮助!

1 个答案:

答案 0 :(得分:1)

scale参数为正数,因此使用dexp(2)之类的指数先验可确保模型对适当的scale值进行采样。因此,您的模型应该采样良好,并且使用extract.samples不会有问题。