我在试着用百分位数曲线拟合一个删失的伽玛分布。我认为删失进行得很好,但是当试图制作百分位曲线时,我得到了以下结果:
我尝试了下面的代码来得到这个:
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之间才是现实的。
我很感激你的时间和帮助。
1条答案
按热度按时间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。