2011-01-16 6 views
2

私はctree関数によって作成された生存オブジェクトを取得したいと思います。 その理由は、ツリーの各葉のカーブを記述するベクトルを取得したいからです。ctreeによって生存オブジェクトを作成するにはどうすればいいですか?

誰でもその方法を知っていますか?

ありがとうございます! 路地

+0

'ctree'は基底R関数ではありません。あなたはどんなパッケージを参照していますか?いくつかのコード例は、あなたの答えを得るのにも役立ちます。 –

+0

@Prasad、それはパッケージ 'party'です。シンプルなサバイバルツリーの例を得るためにパッケージをロードした後、 '?ctree'を参照してください。 –

答えて

2

treeresponseの方法でカーブを見ることができます。はるかに良い方法があるかもしれませんが、これは私が思いついたものです。我々は、訓練データのtreeresponseを使用して、(嵌合)応答をつかむ

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

ここ?ctreeから生存ツリーの例を用いて説明図です。これはリストであり、トレーニングデータ内の各観測のコンポーネントが含まれています。

out <- treeresponse(GBSG2ct) 

各コンポーネントアウトoutは、我々は、4つの端末ノードがこのツリーの生存オブジェクト、クラス"survfit"

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

ので、4つだけのユニークな生存オブジェクトが存在します。あなたは観測が

wnode <- where(GBSG2ct) 

に私たちは、このインデックスに固有の生存オブジェクトを使用することができたどのノードが参照するwhereメソッドを使用することができます。

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

suvival plot for node 3 of the example tree

たとえば、ノード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方法を使用してプロットすることができますこれは、軸の範囲を除いて、先に描かれたツリー上のノード3のパネルで使用されるプロットです。

この例では、ノード4,6,7について繰り返すことができますが、作業するノードをデータと適合ツリーに合わせる必要があります。

+0

ありがとうございますParsad!やってみます。生存オブジェクトの引数 'surv'をどのように使うことができますか?カーブが生成される確率ベクトルを求めたいと思います。おかげでもう一度 - Alley – user573347

+1

Err、Gavin ... –

+0

@Alley生存パッケージのヘルプを見て、 '?survfit.object'も読む必要があります –

関連する問題