我有一篇关于文章的作业,结果必须是间隔(0.10024,1.0917)。
作为一个具体的例子,我们获取了实体瘤患者(n = 10)的缓解时间数据,这是Statistical Methods for Survival Data Analysis, Elisa T. Lee, 1992, Example 4.2的略微修改(断裂)版本:
3,6.5,6.51,10,12,15,8.4 +,4 +,5.7 +和10+。
假设我们有兴趣在t = 9.8,Δo(9.8)时获得累积危险的95%置信区间。因此θo=Δo(9.8)。在这种情况下,函数g是指标函数:g(t)= I [t9.8]。
对于Δo(9.8),使用经验似然比-2logALR的95%置信区间是(0.10024,1.0917) 请帮我看看上面的结果。谢谢。
remissiontime<-(3,4,5.7,6.5,6.51,8.4,10,10,12,15)
status <- c(1,0,0,1,1,0,1,0,1,1)
我的代码是(实际上我不确定这段代码)
library(survival)
library(emplik)
x1 = c(3,4,5.7,6.5,6.51,8.4,10,10,12,15)
d1 = c(1,0,0,1,1,0,1,0,1,1)
KM0 <- survfit(Surv(x1,d1) ~ 1, type="kaplan-meier", conf.type="log")
summary(KM0)
myfun <-function(t){as.numeric(t <=9.8)}
emplikH1.test(x=x1,d=d1,theta=-log(0.643),fun=myfun)
myULfun <-function(theta,x,d){
emplikH1.test(x=x1,d=d1,theta=theta,fun=function(t){as.numeric(t <= 9.8)})}
findUL(fun=myULfun,MLE =-log(0.643),x=x1,d=d1)
您提供的代码的最后一行
findUL(fun=myULfun,MLE =-log(0.643),x=x1,d=d1)
抛出错误:
emplikH1.test中的错误(x = x1,d = d1,theta = theta,fun = function(t){:给定theta离theta0太远
将MLE
的findUL
论点从-log(0.643)
改为1
解决了这个问题。请看下面的内容:
findUL(fun = myULfun, MLE = 1, x = x1, d = d1)
输出,与所需的输出一致:
$`Low`
[1] 0.1002516
$Up
[1] 1.09165
$FstepL
[1] 6.103516e-05
$FstepU
[1] 6.103516e-05
$Lvalue
[1] 3.839313
$Uvalue
[1] 3.839971