使用R TeachingDemos软件包的95%HPD区域
我需要用R中的TeachingDemos软件包找到95%的HPD区域。我有一个遵循伽马分布的后验分布 安装软件包并在库中键入(TeachingDemos)后 我做到了:使用R TeachingDemos软件包的95%HPD区域,r,bayesian,R,Bayesian,我需要用R中的TeachingDemos软件包找到95%的HPD区域。我有一个遵循伽马分布的后验分布 安装软件包并在库中键入(TeachingDemos)后 我做到了: a = 200 b = 20 hpd(qgamma,shape1=a,shape2=b, conf=0.95) (a和b是伽马分布的α和β值) 我在运行代码时不断收到以下错误消息: Error in posterior.icdf(1 - conf + x, ...) : unused arguments (shape
a = 200
b = 20
hpd(qgamma,shape1=a,shape2=b, conf=0.95)
(a和b是伽马分布的α和β值)
我在运行代码时不断收到以下错误消息:
Error in posterior.icdf(1 - conf + x, ...) :
unused arguments (shape1 = 200, shape2 = 20)
我对使用R完全是个新手,那么我做错了什么呢?hpd的签名是
hpd(posterior.icdf, conf=0.95, tol=0.00000001,...)
文档中指出,..
是“传递给posteral.icdf的附加参数”。这意味着,在hpd
中的某个地方,有一行代码类似于
posterior.icdf(x, ...)
其中,…
就是除了conf和
tol`之外传递给hpd``的任何参数
如果查看qbeta
的函数签名,您将看到它有参数shape1
和shape2
。然而,如果查看qgamma
,您会发现这些都不是有效的参数名称
如果使用这些参数直接调用qgamma
,则会收到相同的错误消息,例如:
qgamma(0.5, shape1=200, shape2=20)
它的意思正是它所说的。在R控制台中键入?hpd
以获取帮助。此外,这是一个编程问题,而不是一个真正的统计问题——最好使用r
标记将这些问题发布到StackOverflow上。@ssdecontrol我不知道错误消息想说什么?hpd没有告诉我任何新的事情。如果我将qgamma更改为qbeta,我的代码就可以工作,但我需要我的代码来为qgamma工作。我投票结束这个问题,因为它是关于如何在没有可复制示例的情况下使用R。您可能会混淆beta(shape1,shape2)和gamma(shape,scale或rate,scale)分布?