r - 按位置分组,而不是按数据框中列的名称分组

标签 r dplyr

在下面的代码中,我对 Pop 列进行 group_by() 操作。如何修改代码以便不使用 Pop 而是使用数据集的第一列 group_by()

library(janitor)
library(dplyr)
Pop<-c("p","p","p","p","p","p","p","p")
RC<-c("a","b","c","c","d","d","f","f")
MM<-c(10,9,8,27,9,10,23,42)
UT<-c(5,3,6,14,7,9,45,61)

df<-data.frame(Pop,RC,MM,UT)
tor <- df %>% group_by(Pop) %>% group_modify(~ .x %>% adorn_totals()) %>% ungroup  

tor <- df %>% group_by(df[,1]) %>% group_modify(~ .x %>% adorn_totals()) %>% ungroup  

最佳答案

您可能希望在 group_by 中使用 across:

library(dplyr)

df |>
  group_by(across(1))

输出:

# A tibble: 8 × 4
# Groups:   Pop [1]
  Pop   RC       MM    UT
  <chr> <chr> <dbl> <dbl>
1 p     a        10     5
2 p     b         9     3
3 p     c         8     6
4 p     c        27    14
5 p     d         9     7
6 p     d        10     9
7 p     f        23    45
8 p     f        42    61

关于r - 按位置分组,而不是按数据框中列的名称分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73334405/

相关文章:

R Shiny 动态 slider 动画

r - 使用r选择矩阵中每一行的多数数

r - (R Shiny + igraph) 处理 updateSelectInput 中当前顶点列表的 react 性

r - 对变量的所有离散值使用 dplyr 过滤器

r - 如何使用 dplyr 获得两列的平均值?

r - 是否有一种编程方式可以在 ggplot2 图上传递 y 轴的特定范围?

R:得到三个数字加起来为 100 的所有组合

r - 根据行数将 xlsx 文件拆分为小文件

r - 基于值和包含有关组的基本信息的摘要的组

r - 在 dplyr::funs 的命名参数中,我可以引用其他参数的名称吗?