tbl_summary 和数字变量

tbl_summary and numeric variables

tbl_summary [library (gtsummary)] 不会以相同的方式处理所有数字变量,我不知道如何更改它。例如。

mtcars 只有数字变量,所以当我 运行 这个时,我希望计算每个变量的均值。相反,它将汽缸、齿轮和碳水化合物视为绝对值。

tbl_summary(mtcars, statistic = list(all_numeric() ~ "{mean} ({sd})",
                                      all_categorical() ~ "{n} / {N} ({p}%)"))

我实际上有一个更大的数据集,tbl_summary 将一些数字变量视为分类变量。会不会是因为 N 太少(假设我有很多缺失的行)并且 tbl_summary 不想计算这么小的 N 的平均值?

我无法解决这个问题!

只是我数据中的另一个例子。 Q12_5_TEXT 是一个数值变量,但这是 tbl_summary.

的输出

明确总结了具有很少独特水平的变量。例如,mtcars$cyl 只有三个唯一级别:4、6、8。只有三个级别,分类摘要比平均值或中位数更合适。

使用 type= 参数更改默认摘要类型。

我试过 type = all_continuous() ~ "continuous2",我有 1.3.5 版本,它没有改变摘要类型:

library(tidyverse)
library(gtsummary)

nrows <- 30

df <- tibble(
  a = sample(c(0,1,3.5,7.5),nrows,replace = T),
  b = sample(c("Group I","Group II"),nrows,replace = T)
)

df %>% 
  tbl_summary(
    by = b,
    type = all_continuous() ~ "continuous2",
    statistic = all_continuous() ~ "{mean} ({sd})"
  )

这个汇总变量的输出 'a' 就好像它是一个分类变量,尽管有类型参数。我也 运行 关注这个问题,这就是我来这里寻找答案的原因。如果您可以指出我应该使用的不同论点,我将不胜感激!

我遇到了同样的问题,我通过告诉 tbl_summary 分类变量实际上是连续的来解决它。尝试:

df %>% 
  tbl_summary(
    by = b,
    type = list(all_continuous() ~ "continuous2",
                          all_categorical() ~ "continuous2"),
    statistic = all_continuous() ~ "{mean} ({sd})"
  )