微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

R中具有水平方向变量的处理效果表

如何解决R中具有水平方向变量的处理效果表

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

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

Desired output

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

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,80,80)
_4ID <- c(3837,3837,3812,3896,3894,3877,8099,8027,8033,8064,8022)
descriptions <- c('ILL1','ILL1','ILL2','ILL3','ILL4','ILL5','ILL5')
trt <-c(0,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")

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

解决方法

下面的例子让你关闭,但不是你想要的。我喜欢能够支持这样的表格的想法,我会将它添加到要实现的功能列表中!

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()

enter image description here

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。