我喜欢gt将行组分成列的能力,但我希望有两个行组作为列,而不是一个列与两个组连接,这是默认的.例如:

library(gt)

gtcars %>%
  group_by(mfr, year) %>%
  gt(row_group_as_column = TRUE)

这给了我们一个看起来像这样的gt表,其中Make和year连接到一列中.有没有一种方法可以有两个单独的分组列,一个用于mfr,一个用于year

enter image description here

推荐答案

library(gt)
library(dplyr)

gtcars %>%
  mutate(mfr = factor(mfr, levels = unique(mfr))) %>%  ## keep the original order
  arrange(mfr, year) %>%   
  mutate(year = ifelse(row_number() == 1, as.character(year), ""),
         .by = c(mfr, year)) %>% 
  mutate(mfr = ifelse(row_number() == 1, as.character(mfr), ""),
         .by = mfr) %>% 
  select(mfr, year, everything()) %>% 
  gt()

R相关问答推荐

如何在ggplot 2 geom_segment图表中将UTC转换为EET?

从多个前置日期中获取最长日期

R Lubridate:舍入/快照日期时间到一天中最近的任意时间?

警告:lmdif:info = 0. nls. lm()函数的输入参数不正确

在另一个函数中调用ggplot2美学

使用ggsankey调整Sankey图中单个 node 上的标签

如何根据嵌套元素的名称高效而优雅地确定它属于哪个列表?

在rpart. plot或fancyRpartPlot中使用带有下标的希腊字母作为标签?

在GG图中绘制射线的自动程序

如何使这些react 表对象相互独立?

减go R中列表的所有唯一元素对

R中时间间隔的大向量与参考时间间隔的相交

R仅当存在列时才发生变异

我需要使用ggplot2制作堆叠条形图

如何根据其他列中的两个条件来计算数据帧中的行之间的差异?

Data.table::Shift type=允许扩展数据(&Q;LAG&Q;)

子样本间系数检验的比较

R dplyr::带有名称注入(LHS of:=)的函数,稍后在:=的RHS上引用

我怎么才能把一盘棋变成一盘棋呢?

以列名的字符向量作为参数按行应用自定义函数