【问题标题】:Treatment effect table in R with horizontally-oriented variablesR中具有水平方向变量的治疗效果表
【发布时间】:2021-09-23 15:02:44
【问题描述】:

所以我对数据框进行了子集化,只保留我感兴趣的 4 列。我想计算控制(0)和处理(1)观察的数量。我用 gtsummary 包计算了一些东西,但是变量是垂直方向的(就像这里的http://www.danieldsjoberg.com/gtsummary/articles/tbl_summary.html),一个在一个下面,这不是我想要的。我在谷歌上搜索过,但我看到的所有表格也都有这个方向。

我在这里放一张我想要获得的图片,如果你们中的一些人有任何想法!

我用来获取初始表的代码(与链接中的相同)

install.packages("gtsummary")
library(gtsummary)

trial <- finaldf %>% select(treatment, 2digID,4digID,classificationsdescription)
trial %>% tbl_summary()

t2 <- trial %>% tbl_summary(by = treatment)

我无法输入真实数据,但我创建了一个看起来像我的数据的示例:

_2ID <- c(38,38,38,38,38,38,38,38,38,38,80,80,80,80,80,80,80,80,80,80)
_4ID <- c(3837,3837,3837,3812,3812,3896,3894,3894,3877,3877, 8099,8099,8027,8027,8027,8033,8033,8064,8064,8022)
descriptions <- c('ILL1','ILL1','ILL1', 'ILL2','ILL2','ILL3','ILL4','ILL4','ILL5','ILL5','ILL1','ILL1','ILL2','ILL2','ILL2','ILL3','ILL3','ILL4','ILL4','ILL5')
trt <-c(0,0,0,1,1,1,0,0,1,1,0,0,1,1,1,0,0,1,1,0)

df.data <- data.frame(_2ID,_4ID,descriptions, trt)

更新 - 已解决

我想我设法解决了这个问题,即使我的输出是一个数据框而不是一个“准备发布”的表:

install.packages("reshape2")
library(reshape2)

data_wide <- dcast(df,_2digID+_4digID+descriptions ~ treatment, value.var="counts")

但我还不确定这是否给出了正确的数字。

【问题讨论】:

  • 您是否打算让我们使用该文章中的示例数据集之一?你用什么代码能走到这一步?
  • @r2evans 我将使用代码编辑我的帖子(与我放置的链接中的相同),但由于机密问题我不允许举一个例子对不起。更想知道你们中的一些人是否已经尝试获得这种表(也许是 group_by ?)我是 R 新手,所以我还在苦苦挣扎
  • 当然,我了解数据问题。当您控制数据并在给定样本数据的情况下提供预期输出的清晰度时,您更有可能参与其中。谢谢。
  • @r2evans 我将使用与我相似的发明数据创建一个可重现的示例,请稍等 :)

标签: r dataframe statistics gtsummary


【解决方案1】:

下面的示例让您关闭,但不完全是您所追求的。我喜欢能够支持这样的表格的想法,我会将其添加到要实现的功能列表中!

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

tbl <-
  trial %>%
  mutate(
    grade = paste("Grade", as.character(grade)),
    stage = paste("Stage", as.character(stage))
  ) %>%
  tbl_strata(
    strata = c(stage, grade),
    ~ .x %>%
      tbl_summary(by = trt, 
                  include = response,
                  type = response ~ "categorical",
                  missing = "no",
                  statistic = response ~ "{n}") %>%
      modify_header(all_stat_cols() ~ "**{level}**"),
    .combine_with = "tbl_stack"
  ) %>%
  as_flex_table()

  • 表格被截断,因为它很长!

reprex package (v2.0.0) 于 2021 年 7 月 14 日创建

【讨论】:

  • 嗨@daniel,非常感谢这次更新,太棒了!这确实是最接近我所寻找的可出版设计!
猜你喜欢
  • 1970-01-01
  • 2020-08-22
  • 2021-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多