当我尝试创建 tbl_连续 时,我无法通过连续变量正确总结连续。下面的示例,您可以看到它不适当地转换为因子:
library(tidyverse)
library(gtsummary)
#> #StandWithUkraine
tbl_continuous(
data = trial,
variable = age,
include = c(trt, grade, ttdeath)
) %>% add_p()
任何方向表示赞赏!
我尝试在 reprex 中制作它,但看起来不正确。我也将其发布到 Git Hub。
编辑:我有表
特点 | N | p 值 |
---|
与所期望的相比:
特点 | R2 | p 值 |
---|
这样我就可以描述连续对的连续和因子的关系。我知道它们可能无法很好地融合,但我很高兴将它们分开。希望能澄清,谢谢@Ben 的表格说明!
以下是如何将相关系数添加到表中的示例。请注意,您应该使用
modify_footnote()
更新脚注以反映表中现在的内容。
library(tidyverse)
library(gtsummary)
# build base table
tbl_base <-
tbl_continuous(
data = trial,
variable = age,
include = c(trt, grade)
) %>%
add_p()
# these are the underlying column names
show_header_names(tbl_base)
#> ℹ As a usage guide, the code below re-creates the current column headers.
#> modify_header(
#> label = '**Characteristic**',
#> stat_0 = '**N = 200**',
#> p.value = '**p-value**'
#> )
#>
#>
#> Column Name Column Header
#> ------------ -------------------
#> label **Characteristic**
#> stat_0 **N = 200**
#> p.value **p-value**
# build a data frame with matching colnames as the base table
df_pearson <-
cor.test(trial$ttdeath, trial$age) |>
broom::tidy() |>
select(estimate, p.value) |>
mutate(
stat_0 = round(estimate, 3) |> as.character(),
variable = "ttdeath",
label = "Time to Death, months"
)
# add correlation results to the base table
tbl_base |>
modify_table_body(
~.x |> bind_rows(df_pearson)
) |>
as_kable() # convert to kable to present on stackoverflow
特点 | N = 200 | p 值 |
---|---|---|
化疗治疗 | 0.7 | |
药物A | 46 (37, 59) | |
药物B | 48 (39, 56) | |
等级 | 0.8 | |
我 | 47 (37, 56) | |
二 | 49 (37, 57) | |
III | 47 (38, 58) | |
死亡时间,几个月 | -0.051 | 0.5 |
# use modify_footnote() to update the footnotes to reflect what's presented in the table
创建于 2024-01-15,使用 reprex v2.0.2