我正在尝试用一个新的数据框来划分当前数据框的子集,这个新数据框在一列中列出了我正在研究的基因,在另一列中列出了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我的实际数据帧的尺寸是72x258。我尝试遍历每一列,并计算我正在运行的生存分析的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)}你能帮我弄一下我的循环吗?
发布于 2018-02-21 10:34:58
下面这样,使用lapply()如何
library(survey)
m3.lst <- lapply(2:(ncol(m3)), function(x) {
survfit(Surv(m3$Overall.Survival, m3$Status) ~ m3[, x], data = m3)
})
m3.lsthttps://stackoverflow.com/questions/48896788
复制相似问题