在R中找到95个可截断的伽马分布的可信区间

时间:2013-01-23 02:35:25

标签: r statistics quantile

我有一个支持[4,6]的Gamma(形状= 50,比例= 0.1)。通过将完整的伽马分布除以F(6) - F(4),我能够找到它的分布。

p1 = seq(1,10,length=100)
d1 = dgamma(p1, shape=50, scale=0.1)

p2 = seq(4,6,length=100)
d2.full = dgamma(p2, shape=50, scale=0.1)
d2 = d2.full / (pgamma(6, shape=50, scale=0.1) - pgamma(4, shape=50, scale=0.1))

我如何找到这个截断分布的中心95可信区间(即d2)?

编辑:请注意,我的截断伽玛与标准伽玛不具有相同的pdf。原因是因为截断的伽马必须重新归一化,以便它在支撑[4,6]上积分为1。这就是d2 = d2.full /(F(6) - F(4))

的原因

2 个答案:

答案 0 :(得分:5)

如果我理解正确,你需要的是间隔(lower, upper)超过截断伽玛的概率为95%,间隔(4, lower)的概率为2.5%,间隔为{{ 1}}是2.5%。如果是这样,通过直截了当的代数:

(upper, 6)

答案 1 :(得分:3)

我非常喜欢@liuminzhao的答案,但我已经编写了一个更脏的但可能是互补的答案:

plot(p2, d2)  # you have most of the probability mass in the interval 4-6
 rd2.full = rgamma(100000, shape=50, scale=0.1)
 rd2 = rd2.full[rd2.full >= 4 & rd2.full <6]  # rejection sampling
 quantile(rd2, probs=c(0.025, 0.975))
#     2.5%    97.5% 
# 4.087765 5.897290