R语言 如何为截尾分布确定百分位数曲线边界

gzszwxb4  于 2023-05-26  发布在  其他
关注(0)|答案(1)|浏览(137)

我在试着用百分位数曲线拟合一个删失的伽玛分布。我认为删失进行得很好,但是当试图制作百分位曲线时,我得到了以下结果:

我尝试了下面的代码来得到这个:

y <- c(35.00, 100.00, 100.00,   5.00,  40.00,  40.00,  80.00,  50.00,  40.00,  60.00,
 45.00, 100.00,  40.00,  15.00,  45.00,  40.00,  72.50,  50.00, 100.00,  35.00,
 100.00,  50.00,  60.00,  30.00,  50.00, 56.25,  70.00,  50.00,  75.00, 100.00,
 83.00, 100.00,  81.25,  40.00,  50.00,  40.00,  36.00,  40.00,  56.25,  25.00,
 100.00,  50.00,  67.00, 100.00,  70.00,  45.00,  50.00, 100.00,  50.00,  50.00,
 50.00,  30.00,  50.00,  62.50,  30.00,  55.00,  40.00,  40.00,  25.00,  45.00,
 20.00,  40.00, 100.00,  40.00,  50.00,  75.00, 100.00,  50.00,  40.00,  70.00,
 35.00, 100.00, 100.00,  80.00,  50.00)
x <- c(44, 58, 57, 67, 52, 41, 49, 41, 33, 42, 47, 61, 68, 57, 58, 42, 53, 57, 57, 49, 58, 42, 55, 34, 55, 52, 61, 66, 57, 53, 50, 48, 69, 66, 60, 65, 56, 47, 52, 36, 62, 63, 50, 61, 56, 46, 35, 65, 48, 65, 58, 65, 64, 58, 53, 63, 58, 54, 64, 40, 65, 50, 61, 57, 61, 48, 64, 56, 62, 56, 50, 66, 65, 64, 64)
ysurv <- Surv(y1, y1!=100, type="right")
gen.cens(GA, type = "right")

g0Cens <- gamlss(ysurv ~ x, 
                 sigma.fo = ~x,
                 nu.fo = ~ x,
                 family = GArc)
centiles(g0Cens, x)

现在我的问题是,我如何才能防止百分位数曲线超过100的界限,因为这些值只有在0和100之间才是现实的。
我很感激你的时间和帮助。

pwuypxnk

pwuypxnk1#

你说只有从0到100的y值才是现实的。你的y值正好是100。
这些值是否正好为100,或在100以上删失(即>=100)?
如果值正好是100,并且不可能有大于100的值,则您具有截断分布并且不进行删失。一个想法是将y除以100,然后新的y位于0和1之间(包括1)。所以你需要在[0,1]上有一个膨胀的分布,参见Rigby等人的第9.3节(p187-199)。另一个想法是使用大于100的截断分布。
如果你真的有大于100的删失y值,那么大于100的值是可能的,所以百分位数应该大于100。

相关问题