r - 在 r 中的 dplyr::group_by 之后将组变量转换为组名称

标签 r dplyr

我想将数据分成单独的组并查看。

mtcars %>% group_by(cyl) %>% select(mpg, hp)

输出:

# A tibble: 32 x 3
# Groups:   cyl [3]
     cyl   mpg    hp
 * <dbl> <dbl> <dbl>
 1     6  21.0   110
 2     6  21.0   110
 3     4  22.8    93
 4     6  21.4   110
 5     8  18.7   175
 6     6  18.1   105
 7     8  14.3   245
 8     4  24.4    62
 9     4  22.8    95
10     6  19.2   123
# ... with 22 more rows

分组变量仍然是数据框中的一列。有没有办法使用 dplyr 使组变量成为一种组名称(每个组一个条目)? 像下面这样的东西。通过这种方式更容易可视化每个组。

      4  21.0   110
         22.8    93
         21.4   110
      6  18.7   175
         18.1   105
      8  14.3   245
      ........

最佳答案

我们可以使用replace来更改值

library(dplyr)
mtcars %>%
   group_by(cyl) %>%
   select(mpg, hp) %>% 
   arrange(cyl) %>%
   mutate(cyl1 = replace(cyl, row_number()>1, "")) %>%
   ungroup() %>%
   select(-cyl) %>%
   rename(cyl=cyl1)

关于r - 在 r 中的 dplyr::group_by 之后将组变量转换为组名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45621385/

相关文章:

R:如何过滤/子集日期序列

R:为什么 group_by 即使在使用 quosures 时仍然需要 "do"

R 包 CRAN 注释,用于测试中的包依赖项和警告

c++ - 稀疏 x 密集矩阵与 Armadillo 相乘出乎意料地慢

r - S3方法帮助(roxygen2)

r - 检查每行右侧的列是否具有特定值

r - ggplot : Boxplot by several categorical variables

R 使函数对标准和非标准评估都具有鲁棒性

r - 总结这个数据框的更好方法是什么?

r - 为 ggplot2 生成亮色和暗色对