为什么不包含费率表对象时relsurv函数rs.surv起作用?

时间:2019-07-10 09:44:01

标签: r

我正在使用relsurv函数执行相对生存率分析,以了解一些有关风险暴露的后续数据。我有关于诊断年龄,诊断年份的数据,并跟踪直到死亡的时间以及性别。

我已经使用UK费率表作为比较来实现该功能以获取相对生存率,但是,我注意到,即使省略了费率表调用,它仍然会产生结果。

在这种情况下,与之比较的是什么?

结果不同,但这让我担心我没有正确实现此功能。

我省略了rs.surv函数中的费率表调用,并且没有错误消息。我期待出现错误消息,因为应该没有数据可以与样本死亡数据进行比较。

#Relative survival analysis
install.packages("relsurv")
require(relsurv)

# creat df with follow up time to death (fuptime) and status (stat), gender (sex), age at diagnosis (age) and date of diagnosis (year). 
df = data.frame(fuptime = runif(100, min=15200, max=22000), sex = c(rep.int(1,50), rep.int(2,50)), year = runif(100, min = 0, max =10000), stat = rep(1,100), age = runif(100, min = 7600, max =15200))

#downloaded from https://www.mortality.org/
UKtab <- transrate.hmd(male = "mltper_1x1.txt", female = "fltper_1x1.txt")

#fit relative survival ratio with ratetable
fit_rsr = rs.surv(Surv(fuptime, stat) ~1, data = df, ratetable = UKtab)
summary(fit_rsr)

#fit without ratetable
fit_rsr_noUKtab = rs.surv(Surv(fuptime, stat) ~1, data = df)
summary(fit_rsr_noUKtab)'

产量:

> summary(fit_rsr)
Call: rs.surv(formula = Surv(fuptime, stat) ~ 1, data = df, ratetable = UKtab)

  time n.risk n.event survival  std.err lower 95% CI upper 95% CI
 15286    100       1 1.120113 0.012934     1.10e+00      1.14575
 15315     99       1 1.113334 0.015973     1.08e+00      1.14509
 15576     98       1 1.123151 0.022623     1.08e+00      1.16838
 15605     97       1 1.115483 0.024841     1.07e+00      1.16525

并且没有费率表,它仍然会产生:

> fit_rsr_noUKtab = rs.surv(Surv(fuptime, stat) ~1, data = df)
> summary(fit_rsr_noUKtab)
Call: rs.surv(formula = Surv(fuptime, stat) ~ 1, data = df)

  time n.risk n.event survival  std.err lower 95% CI upper 95% CI
 15286    100       1 1.190886 0.012095     1.17e+00      1.21483
 15315     99       1 1.184226 0.015805     1.15e+00      1.21561
 15576     98       1 1.199467 0.025145     1.15e+00      1.24978
 15605     97       1 1.192155 0.027439     1.14e+00      1.24717

0 个答案:

没有答案