微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法抑制 R 中 tbl_regression 函数中的 p 值?

如何解决有没有办法抑制 R 中 tbl_regression 函数中的 p 值?

为了测试疾病组(categorical_variable)和疾病(结果;计数)之间是否存在关联,我运行了 3 个负二项式回归模型。

为了显示 OR 和 CI,我使用了 tbl_regression 包中的 gtsummary 函数。但是,此函数显示用逗号分隔的 CI,我希望将它们放在括号之间,并显示 p 值,我想将其全部抑制。

我的代码

library(gtsummary)

model <- glm(data=data,formula=outcome ~ categorical_variable)

tbl_regression(model,exponentiate = TRUE,include="categorical_variable") 

在格式化 CI 和抑制 p 值列方面有什么帮助吗?

我尝试添加 %>% as_gt() %>% cols_hide("p-value")%>% as_gt() %>% cols_hide(columns=vars("p-value")) 但无济于事。它说它不能将 p 值识别为列(如果没有括号也不能工作)。

解决方法

如果 res 是上述问题中的对象是 gtsummary 对象,则可以按如下方式修改查看器窗格中显示的表格主体。在这里,我使用 dplyrselect 函数(modify_table_body 需要一个函数)来排除 p 值列。

gtsummary::modify_table_body(res,dplyr::select,-p.value)

我只想使用 base

p_val_col<-which(names(res$table_body)=="p.value")

gtsummary::modify_table_body(res,`[`,-p_val_col)

还要修改 ci 的显示(您可能可以编写比这更简单的正则表达式),请按如下方式运行(同时)。可以编写一个函数来一次执行此操作,而不是调用 modify_table_body 两次:

gtsummary::modify_table_body(res,-23) %>% 
  gtsummary::modify_table_body(.,dplyr::mutate,ci=gsub("(\\d\\.\\d{,4})(,)(\\d\\.\\d{,4})","\\[\\1 \\3\\]",ci))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。