【问题标题】:Cross table in gtsummary with computed data set/weighted countgtsummary 中具有计算数据集/加权计数的交叉表
【发布时间】:2021-05-29 00:04:41
【问题描述】:

我需要更多帮助。我需要尽可能多的可发表格式(科学论文)的交叉表。对于这些需求,我一直在使用 gtsummary。

我拥有的数据框是其他描述性例程完成的先前计数的结果。

我尝试过使用 tbl_summary、tbl_cross、tbl_strata。但是,最接近我需要的返回的是描述性计算和行数统计数据,而不是数据帧的计算(变量 n)。

抱歉,我尝试了所有方法。我什至将 df 转换为宽格式。但无论如何,我缺乏这样做的经验和知识!

# Data frame
Result <- as.factor(c("Derrota", "Empate", "Vitória", 
            "Derrota", "Empate", "Vitória",
            "Derrota", "Empate", "Vitória"))

Context <- as.factor(c("Overall match", "Overall match", "  
Overall match", "First half", "First half", "First half",   
"After balanced halftime", "After balanced halftime",
"After balanced halftime"))

n <- as.numeric(c(583, 607, 1217,
                  487, 1100, 820, 
                  178, 304, 367))

df <- data.frame(Result, Context, n)

# Definitive table of results
library(gtsummary) # presentation-ready data summary and analytic result tables
df %>%
  select(c('Result',
           'n',
           'Context')) %>% 
     tbl_summary(by=Result)

【问题讨论】:

  • 嗨,Christiano,您能否详细说明您需要输出的外观?您在寻找加权汇总表吗?你需要百分比不是列吗?更多细节将帮助我们帮助您。此外,如果您使用可重现的示例发布您的问题(即我们都可以在我们的计算机上运行的东西)。
  • 嗨丹尼尔非常感谢您的快速回复。我只需要列联表(上下文 x 结果;因子变量)。这些变量的数据在第 n 列(数字,我称之为计算,因为它来自一个大数据集 [>3000],逐行)。道具栏是不必要的。例如,我需要表格的底部(由争议的上下文分隔)。
  • 抱歉,我仍然不确定您在寻找什么。能否请您在 MS Word 中制作一个类似的表格,并发布屏幕截图?我想我可以更好地协助。
  • 嗨丹尼尔,我提供了更多细节。我希望有一张传统的 3x3 桌子。显然,我可以继续在其中加入推论统计。
  • 您需要模拟一个您正在寻找的示例。从你的解释中我不清楚。

标签: r crosstab reproducible-research gtsummary


【解决方案1】:

这就是你要找的吗?

library(gtsummary)
packageVersion("gtsummary")
#> [1] '1.3.7'

df <- 
  data.frame(
    Result = c("Derrota", "Empate", "Vitória", 
               "Derrota", "Empate", "Vitória",
               "Derrota", "Empate", "Vitória"), 
    Context = c("Overall match", "Overall match", 
                "Overall match", "First half", "First half", "First half",   
                "After balanced halftime", "After balanced halftime",
                "After balanced halftime"), 
    n = c(583, 607, 1217,
          487, 1100, 820, 
          178, 304, 367)
  )

tbl <-
  # convert data frame to survey object that accounts for the weights
  survey::svydesign(~1, data = df, weights = ~n) %>%
  # summarize weighted data
  tbl_svysummary(by = Result, percent = "cell")

reprex package (v1.0.0) 于 2021 年 2 月 27 日创建

【讨论】:

  • 嗨丹尼尔,有点像这样。但是,您提供了一个 4x3x2 的表格,分别为:stage、grade 和 trt。我只有两个变量(上下文和结果),每个变量都有三个级别(3x3)。对我来说,行或列的排列无关紧要。
  • 嗨丹尼尔,来自巴西的早上好。非常感谢。我不知道怎么和你交流。我说的是观察到的细胞计数,从技术上讲,它是加权计数。 BW,克里斯蒂亚诺
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-29
  • 2019-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多