来自经验样本的HPD区域?如何显示lb和ub?

时间:2019-03-09 20:53:35

标签: r

下面是一个R函数,该函数根据pdf f从未知的单峰后验分布计算出95%HPD区间。 (HDP95)。运行此代码后,如何实际生成下界和上限的经验估计值(即类似于SAS中的proc print ?!)?谢谢!!

~/.bash_profile

1 个答案:

答案 0 :(得分:0)

您可能会很懒:

library("coda")
hfun <- function(x,...) coda::HPDinterval(as.mcmc(matrix(x)),...)

(需要额外的机制,因为HPDinterval需要一个mcmc对象;此函数将其应用于数字矢量)。

示例:

set.seed(101); hfun(rgamma(1000,shape=2,scale=1))
##           lower    upper
## var1 0.02420174 4.977631
## attr(,"Probability")
## [1] 0.95