gtsummary - 为什么函数“round”不适用于 p 值的数字?以及如何使用“gtsummary”调整汇总表中的百分比数字?
问题描述
当我为 add_p() 创建一个“自定义 pvalue 函数”时,我尝试调整 p 值的数字,但发现函数“round”不起作用。(参见代码“result$p <- round(result$p, 3)”)
此外,我发现我无法更改汇总表中计数百分比的数字。
ttest1 <- function(data, variable, by, ...) {
result <- list()
result$p <- stats::t.test(data[[variable]] ~ data[[by]])$statistic
result$p <- round(result$p, 3)
result$test <- "t test"
result
}
ttest2 <- function(data, variable, by, ...) {
result <- list()
result$p <- stats::t.test(data[[variable]] ~ data[[by]])$p.value
result$p <- round(result$p, 3)
result$test <- "t test"
result
}
add_p_ex1 <-trial[c("age","grade", "response", "trt")] %>%
tbl_summary(by = trt,
statistic = list(all_continuous() ~ "{mean} ± {sd}",
all_categorical() ~ "{n} ({p})"),
digits = list(all_continuous() ~ c(2, 2))) %>%
add_p(test = list(all_continuous() ~ "ttest1", all_categorical() ~ "chisq1")) %>%
modify_header(p.value = md("**t/X2**"))
add_p_ex2 <-
tbl_summary(by = trt,
statistic = list(all_continuous() ~ "{mean} ± {sd}",
all_categorical() ~ "{n} ({p})"),
digits = list(all_continuous() ~ c(2, 2))) %>%
add_p(test = list(all_continuous() ~ "ttest1", all_categorical() ~ "chisq2"))
tbl_merge(list(add_p_ex1, add_p_ex2)) %>%
as_gt(include = -tab_spanner) %>%
cols_hide(columns = vars(stat_1_2, stat_2_2))
解决方案
首先,我能不能夸奖一下你制作的桌子:我印象非常深刻!
要更改表中 p 值的格式,请使用add_p(pvalue_fmt=)
参数传递函数。该函数应采用数字向量,并返回格式化/舍入的字符向量。
要修改格式百分比,请使用tbl_summary(digits=)
参数。
下面的例子!
library(gtsummary)
packageVersion("gtsummary")
#> [1] '1.4.2'
tbl <-
trial %>%
dplyr::select(trt, age, grade) %>%
tbl_summary(
by = trt,
# show percentages to 1 decimal place
digits = all_categorical() ~ c(0, 1)
) %>%
# rounding p-values to 3 decimal places
add_p(pvalue_fun = function(x) style_number(x, digits = 3))
由reprex 包于 2021-07-23 创建 (v2.0.0 )
推荐阅读
- go - 如何在go中动态更改函数参数类型
- sql-server-2008 - 唯一索引违规
- react-native - 如何在 React Native 的 map 中使用 yield
- c++ - 使用 CMake 将 open62541 库构建为外部库
- android - 如何通过 Android Studio/react native 中的 DependencyResolution 手动设置相同的版本(编译和运行时类路径)
- database - 如何对数据库中的任意排序项目进行建模?
- kubernetes - 将多个 Persistent Volume Claim 绑定到一个挂载路径
- api - 无法通过使用 API v2 降序获得 BigCommerce 订单
- azure - NSG 流日志不会出现在 Azure Monitor 中
- c# - 快速循环 TFS 工作项或批量插入 TFS 工作项到 SQL 的快速方法