【发布时间】:2021-09-07 12:51:19
【问题描述】:
问题
我正在使用包含均值和频率统计检验的 gtsummary 表。我想在表格中包含效果大小并遇到this post which shows how to do it for Wilcox test effect size。该代码也适用于 Cohen 的 d,但我正在努力为 Cramer 的 V 修改它。似乎 cramer_v() 函数需要调用现成的列联表,而不是使用原始数据。有什么方法可以计算并包含 gtsummary 表中卡方的 Cramer's V?
示例
library(tidyverse)
library(rstatix)
library(gtsummary)
theme_gtsummary_mean_sd()
my_ES_test <- function(data, variable, by, ...) {
rstatix::cohens_d(data, as.formula(glue::glue("{variable} ~ {by}")))$effsize
}
gtTable <- mtcars %>%
select(hp, vs, am) %>%
tbl_summary(by = vs) %>%
add_p() %>%
add_stat(fns = all_continuous() ~ my_ES_test) %>%
modify_header(add_stat_1 ~ "Effect size")
print(gtTable)
contTable <- table(mtcars$vs, mtcars$am)
chisq.test(contTable, correct = FALSE)
#>
#> Pearson's Chi-squared test
#>
#> data: contTable
#> X-squared = 0.90688, df = 1, p-value = 0.3409
cramer_v(contTable)
#> [1] 0.1042136
【问题讨论】: