Survdiff循环 - P值

时间:2018-02-21 01:18:50

标签: r survival-analysis survival

我尝试使用新数据框对我当前的数据框进行子集化,该数据框列出了我在一列中研究的基因和另一列中的p值(对于每个基因)。

我有一个名为m3的数据框,如下所示:

Sample #          BRCA       TP53        MYC       Status       Overall Survival
1                   0          1          1          0             5.8
2                   1          0          0          1             8.4
3                   0          0          1          1             2.2
4                   0          0          0          0             16.2

我的实际数据框的尺寸是72 x 258.我试图遍历每一列并计算我正在运行的生存分析的p值。我试图确定是否有特定的突变会导致统计学上显着的生存差异。我表示患者每个基因的突变为1。

我只为一列编写了一个生存函数,但我希望遍历每一列,然后最终将其子集化以创建一个新的数据框。我不确定使用apply函数(我读过很常见)或使用for循环是否明智。

survfit(Surv(m3$Overall.Survival, m3$Status) ~m3$BRCA2, data = m3

我最初尝试过这个,但它没有用......

for (col in 2:ncol(m3) ){surv.mod.list[col] <- survfit(S ~ m3[ , col], data = m3)}

你可以帮助我循环吗?

1 个答案:

答案 0 :(得分:0)

使用lapply()

这样的事情怎么样?
library(survey)
m3.lst <- lapply(2:(ncol(m3)), function(x) {
  survfit(Surv(m3$Overall.Survival, m3$Status) ~ m3[, x], data = m3)
  })
m3.lst