来自 {gtsummary} 的 tbl_uvregression() 函数的多元单变量 Cox 回归

Multiple univariate Cox regression with tbl_uvregression() function from {gtsummary}

我找不到如何使用来自 {gtsummary} 的 tbl_uvregression() 函数执行多单变量 Cox 回归。

这是我到目前为止的情况:

tbl_uvregression(dataSOF, method = glm, y = death, method.args = list(family = binomial), exponentiate = T)
coxph(Surv(survival_days, survival_status) ~ age, data = dataSOF) %>%
  tbl_regression(exponentiate = TRUE)
coxph(Surv(survival_days, survival_status) ~ age+disease, data = dataSOF) %>%
  tbl_regression(exponentiate = TRUE)

但是我无法得到多个单变量cox回归...

我试过了:

tbl_uvregression(
  dataSOF,
  method=coxph,
  y = Surv(time = survival_days, event = survival_status),
  method.args = list(family = binomial),
  exponentiate = T
)

但我收到以下错误:

Erreur : Problem with `mutate()` input `model`.
x Argument family not matched
i Input `model` is `map(...)`.
Run `rlang::last_error()` to see where the error occurred.

我正在处理的数据:

dput(dataSOF[1:10, ])
structure(list(ID = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), age = c(62, 
57, 67, 74, 71, 67, 46, 71, 53, 63), disease = c(0, 1, 1, 1, 
1, 0, 1, 0, 0, 0), death = c(0, 0, 1, 0, 1, 1, 0, 1, 0, 1), censored_survival_days = c(60, 
60, 60, 60, 60, 60, 60, 60, 60, 60), censored_survival_status = c(1, 
1, 1, 1, 1, 1, 1, 1, 1, 1)), row.names = c(NA, -10L), class = c("tbl_df", 
"tbl", "data.frame"))

有什么建议吗? 非常感谢!


更新

另一个可重现的例子:

dataAAV3 <- structure(list(age = c(62, 57, 67, 46, 53, 63, 60, 77, 69, 86
), sexe = c(1, 1, 1, 1, 1, 1, 0, 1, 0, 1), survie_sans_deces_cens5 = c(60, 
                                                                       60, 60, 60, 60, 60, 60, 20, 60, 8), status_deces_cens5 = structure(c(1L, 
                                                                                                                                            1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L), .Label = c("1", "2"), class = "factor")), row.names = c(NA, 
                                                                                                                                                                                                                                         -10L), class = c("tbl_df", "tbl", "data.frame"))```


library(gtsummary)
#> Warning: le package 'gtsummary' a été compilé avec la version R 4.0.3
tbl_uvregression(
  dataAAV3,
  method=coxph,
  y = Surv(time = survie_sans_deces_cens5, event = status_deces_cens5),
  exponentiate = TRUE)
#> Warning in .select_to_varnames(select = !!y, data = data, arg_name = "y"):
#> redémarrage de l'évaluation d'une promesse interrompue
#> Error: Specify one, and only one, of `x` and `y`. This function can
#>          create univariate regression models holding either a covariate or outcome
#>          constant.
Created on 2021-03-04 by the reprex package (v1.0.0)

使用您的示例数据,下面的代码有效。请注意,您提供的数据框中的变量名称与函数调用中的变量名称不匹配。

library(gtsummary)
packageVersion("gtsummary")
#> [1] '1.3.7'
library(survival)

dataSOF <-
  structure(
    list(
      ID = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
      age = c(62, 57, 67, 74, 71, 67, 46, 71, 53, 63),
      disease = c(0, 1, 1, 1, 1, 0, 1, 0, 0, 0), 
      death = c(0, 0, 1, 0, 1, 1, 0, 1, 0, 1), 
      censored_survival_days = c(60, 60, 60, 60, 60, 60, 60, 60, 60, 60), 
      censored_survival_status = c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
    ), 
    row.names = c(NA, -10L), 
    class = c("tbl_df", "tbl", "data.frame")
  )


tbl_uvregression(
  dataSOF,
  method=coxph,
  y = Surv(time = censored_survival_days, event = censored_survival_status),
  exponentiate = TRUE,
  include = -ID
)

reprex package (v1.0.0)

创建于 2021-03-04