2017-04-23 3 views
0

survfit()関数はリストを受け入れないので、カラムから情報を削除せずにSurv()の結果をリストから外す方法が必要です。例えば、肺のデータを使用して:データフレームのリストを使ってサバイバルカーブを作成

library(survival) 

attach(lung) 

lung$survObj <- with(lung, Surv(time, status ==2)) 
lung.2 <- lung 
mylist <- list(lung,lung.2) 

ここでは、列5(性別)による)私のリストからlungを使用し、(survfit `にlung$survObjに合格しようとする試みとグループである:

survfit(formula = mylist[[1]][11] ~ mylist[[1]][5], data = mylist[[1]]) 

invalid type (list) for variable 'mylist[[1]][11]' 

が、以下の与えられた:

nrow(mylist[[1]][11]) 

228 

length(unlist[[1]][11]) 

456 

つまり2倍!

私は不等長の列を比較しているという明らかな不満があります。

また、+のシンボルは、リストされた後に削除され、survfit()にとって不可欠であることに注意してください。

誰かがデータフレームのリストでsurvfitを呼び出すことができましたか?

ありがとうございました。

答えて

1

ここでは、問題に対する3つの解決策を示します。

A)

survfit(survObj ~ sex, data=mylist[[1]]) 

B)

Y1 <- mylist[[1]]$survObj 
x1 <- mylist[[1]]$sex 
survfit(Y1 ~ x1) 

C)

Y2 <- mylist[[1]][11][[1]] 
x2 <- mylist[[1]][5][[1]] 
survfit(Y2 ~ x2) 
+0

感謝マルコすべての作業と自動化pruposesための最初のオプションと一緒に行きました。 – brucezepplin

関連する問題