2011-01-16 6 views
2

Я хотел бы получить объекты выживания, созданные функцией ctree. Причина в том, что я хотел бы получить векторы, описывающие кривые в каждом листе дерева.Как получить объекты выживания, созданные ctree?

Кто-нибудь знает, как это сделать?

Заранее благодарен! Аллея

+0

'ctree' не является базовой функцией R. Какой пакет вы имеете в виду? Некоторые примеры кода также помогут вам получить ответ. –

+0

@Prasad, это в упаковке 'party'. См. '? Ctree' после загрузки пакета, чтобы получить пример простого дерева выживания. –

ответ

2

Вы можете получить кривые, используя метод treeresponse. Там может быть намного лучший способ, но это то, что я придумал.

Вот иллюстрация используя пример дерева выживания от ?ctree:

require(party) 
data("GBSG2", package = "ipred") 
GBSG2ct <- ctree(Surv(time, cens) ~ .,data = GBSG2) 
plot(GBSG2ct) 

Мы захватить (установлено) ответы, используя treeresponse для обучающих данных. Это список с компонентом для каждого наблюдения в данных обучения.

out <- treeresponse(GBSG2ct) 

Каждый компонент из out является объектом выживания, класс "survfit"

> class(out[[1]]) 
[1] "survfit" 

Для этого дерева мы имеем четыре терминальных узлов, так что есть только четыре уникальные объекты выживания. Вы можете использовать метод where, чтобы увидеть, какие узлы наблюдения были в

wnode <- where(GBSG2ct) 

Мы можем использовать этот показатель уникальных объектов выживания. Например, для узла 3 (крайний левый узел на участке дерева)

> n3 <- which(wnode == 3 & !duplicated(wnode)) 
> n3 
[1] 1 
> out[[n3]] 
> out[[n3]] 
records n.max n.start events median 0.95LCL 0.95UCL 
    686  248  248  88 2093 1814  NA 

Кривая выживания для узла 3 могут быть построены с использованием plot метод:

plot(out[[n3]], conf.int = FALSE, mark.time = FALSE) 

suvival plot for node 3 of the example tree

который, кроме диапазона по осям, является графиком, используемым в панели для узла 3 на ранее нарисованном дереве.

Для этого примера вы можете повторить для узлов 4, 6 и 7, но вам нужно будет настроить узлы, с которыми вы работаете, с вашими данными и установленным деревом.

+0

Большое спасибо Parsad! Я попробую. Вы знаете, как я могу использовать аргумент «выживать» объекта выживания? Я хотел бы получить векторы вероятности, из которых генерируется кривая. Еще раз спасибо - Аллея – user573347

+1

Err, это был бы Gavin ... –

+0

@Alley вам нужно посмотреть помощь для пакета выживания, а также прочитать '? Survfit.object' –

Смежные вопросы