В "Анализе выживания с R", какова цель функции "выживания" в модели пропорциональных рисков Кокса?

В настоящее время я смотрю на документ, в котором говорится об использовании модели пропорциональных рисков Кокса, вашей переменной ответа для части формулы

coxph(formula, data=, weights, subset, 
      na.action, init, control, 
      ties=c("efron","breslow","exact"), 
      singular.ok=TRUE, robust=FALSE, 
      model=FALSE, x=FALSE, y=TRUE, tt, method, ...)

должен выдержать () в части формулы.

Может кто-нибудь сказать мне, что делает функция Surviv()? Я понимаю, что в нем говорится, что это объект выживания, но я не уверен, что это то, что обязательно требуется. Спасибо!

2 ответа

Это тот случай, когда вам нужно просто прочитать документацию и запустить приведенные в ней примеры. Первый пример в ? coxph показывает следующее:

# Create the simplest test data set 
test1 <- list(time=c(4,3,1,1,2,2,3), 
              status=c(1,1,1,0,1,1,0), 
              x=c(0,2,1,1,1,0,0), 
              sex=c(0,0,0,0,1,1,1)) 
# Fit a stratified model 
coxph(Surv(time, status) ~ x + strata(sex), test1) 

Ясно, что вам нужно, чтобы левая сторона / ответная часть формулы была выводом из Surv (который также имеет четкую документацию, которую вы можете прочитать; см. ?Surv). Если вы посмотрите на этот объект:

> str(Surv(test1$time,test1$status))
 Surv [1:7, 1:2] 4  3  1  1+ 2  2  3+
 - attr(*, "dimnames")=List of 2
  ..$ : NULL
  ..$ : chr [1:2] "time" "status"
 - attr(*, "type")= chr "right"

И посмотрите, как она отражает информацию, содержащуюся в time а также status колонки:

> with(test1, cbind.data.frame(time, status, Surv(time,status)))
  time status Surv(time, status)
1    4      1                 4 
2    3      1                 3 
3    1      1                 1 
4    1      0                 1+
5    2      1                 2 
6    2      1                 2 
7    3      0                 3+

Затем, чтобы ответить на ваш вопрос о том, нужно ли это, вы можете просто попробовать запустить coxph без него и посмотрим что получится

> coxph(time ~ x + strata(sex), test1) 
Error in coxph(time ~ x + strata(sex), test1) : 
  Response must be a survival object

Surv() - это функция для создания объекта выживания. Для анализа выживаемости вам нужно время наблюдения (или временные интервалы в случае переменных, зависящих от времени) и статус человека. Очевидно, это обязательно требуется.

Вы должны прочитать документацию пакета выживания в первую очередь. Я также предлагаю вам прочитать эту очень хорошо объясненную книгу об анализе выживания: Анализ выживания: самообучающийся текст

Другие вопросы по тегам