在 R 中,有没有办法按列名而不是列号对 data.frame 进行分组?

set.seed(1)

df <- data.frame(replicate(5, sample(c(1:99), 7, rep = TRUE)))

names(df) <- c("alpha","bravo","charlie","delta","echo"); df

通常,我会将 data.frame 的一部分分组,例如:
df[,2:4]

通常在具有数百列的较大数据集中,更难以确定列号。我想使用列名而不是列号对列进行分组。以下给出了一条错误消息,但表明了我正在尝试做的事情。
df[,"bravo":"delta"]

有什么想法吗?

最佳答案

使用 dplyr ,我们可以使用 select 中的列名范围

library(dplyr)
df %>%
   select(bravo:delta)
#  bravo charlie delta
#1    82      74    37
#2    59       7    34
#3    51      73    89
#4    97      79    44
#5    85      85    79
#6    21      37    33
#7    54      89    84

关于r - 在 R 中,按列名而不是列号对列进行分组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59492111/

10-10 17:59