我尝试使用新数据框对我当前的数据框进行子集化,该数据框列出了我在一列中研究的基因和另一列中的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)}
你可以帮助我循环吗?
答案 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