95%HPD区域使用R TeachingDemos软件包

时间:2016-11-01 01:18:52

标签: r bayesian

我需要使用R中的TeachingDemos软件包找到95%的HPD区域。我有一个遵循伽马分布的后验分布。

安装软件包并输入库(TeachingDemos)后,

我做了:

a = 200 
b = 20
hpd(qgamma,shape1=a,shape2=b, conf=0.95)

(a和b是Gamma分布的α和β值)

运行代码时,我不断收到以下错误消息:

 Error in posterior.icdf(1 - conf + x, ...) : 
  unused arguments (shape1 = 200, shape2 = 20)

我是使用R的新手,所以我做错了什么?

1 个答案:

答案 0 :(得分:1)

hpd的签名是

hpd(posterior.icdf, conf=0.95, tol=0.00000001,...)

文档说明...是“传递给后路的其他参数。”这意味着,在hpd内的某处,有一行看起来像

的代码
posterior.icdf(x, ...)

其中...只是传递给hpd`` apart from conf and tol`的参数。

如果查看qbeta的函数签名,您会看到它有参数shape1shape2。然而,如果你看qgamma,你会发现那些不是有效的参数名称。

如果直接使用这些参数调用qgamma,您将收到相同的错误消息,例如

qgamma(0.5, shape1=200, shape2=20)