gtsummary包add_p()无法处理survfit类对象问题求助
解决gtsummary中tbl_survfit结合add_p时的类型转换错误
你遇到的错误是因为add_p()的参数用法不符合tbl_survfit对象的要求。当前代码中test = list(menopausal_status ~ "logrank")的语法适用于回归模型表格(如tbl_regression),但tbl_survfit基于生存分析结果生成,无需指定变量名,直接传递检验方法即可。
修正后的完整代码
fit_os_menopausal = survival::survfit(Surv(os_time_yrs, os_event, type = "right") ~ menopausal_status, data = data) gtsummary::tbl_survfit(fit_os_menopausal, times = c(1,2,3,5,8), label_header = "**{time} year freedom**", estimate_fun = function(.x){style_percent(.x, digits = 1, symbol = TRUE)}) %>% gtsummary::add_n() %>% gtsummary::add_nevent() %>% gtsummary::add_p(test = "logrank")
关键说明
add_p.tbl_survfit的test参数接受字符串(如"logrank")或检验函数,无需绑定变量名。tbl_survfit已关联survfit对象中的分组变量,指定检验方法后会自动对分组执行log-rank检验并添加P值。- 若需自定义检验逻辑,也可直接传入检验函数,例如:
add_p(test = survival::survdiff)
内容的提问来源于stack exchange,提问作者Peng
相关产品推荐
相关产品推荐

