Я использую функцию relsurv
для проведения анализа относительного выживания, некоторые последующие данные о подверженности риску.У меня есть данные о возрасте диагноза, годе диагноза и времени до смерти, а также о поле.
Однако я реализовал эту функцию, используя таблицу тарифов в Великобритании для сравнения, чтобы получить относительную выживаемость, однако я заметил, что даже когда вызов таблицы тарифов был пропущен, он все равно дает результаты.
В этом случае, с чем это сравнивается?
Результаты разные, но меня беспокоило, что я неправильно реализовал эту функцию.
Я опустил вызов таблицы тарифов в функции 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