函数R中的Cox Hazard

时间:2017-11-16 16:33:50

标签: r function cox

我在引用R中的变量时遇到问题。

寻找我的简单功能:

 CoxStep <- function(dataset,a,b){  
 m1 = coxph(Surv(b,a)~.-dataset[,b]-dataset[,a] ,data=dataset)
  summary(m1)
  }

我将该函数调用如下:

CoxStep(数据,Alive1,FU_3M)

其中FU_3M是一列时间 Alive1是一列事件 和data是我的数据集,其中包含下面的变量和其他变量。

功能看不到此Alive1和FU_3M。

你可以帮帮我吗?任何命题?

1 个答案:

答案 0 :(得分:0)

简单的解决方法是让你的函数将公式作为参数:

CoxStep <- function(dataset, form){  
 m1 = coxph(form, data=dataset)
  summary(m1)
  }

然后使用CoxStep(dataset, Surv(a, b) ~ . - a - b)调用它。

如果你想要这个公式,你可以建立一个辅助函数:

my_form = function(a, b) {
    as.formula(sprintf('Surv(%1$s, %2$s) ~ . - %1$s - %2$s', a, b)
}

my_form可以使用字符串调用,例如my_form('a', 'b'),因此您可以将其与CoxStep(dataset, my_form('a', 'b'))放在一起。