我可以使用数字向量如c(1:5,27:30)
选择数据表中的多个列范围。是否有一种方法可以使用列名来完成相同的操作?例如,以类似于col1:col5,col27:col30
的形式。
我可以使用数字向量如c(1:5,27:30)
选择数据表中的多个列范围。是否有一种方法可以使用列名来完成相同的操作?例如,以类似于col1:col5,col27:col30
的形式。
dplyr
来实现以下功能:df <- data.frame(a=1, b=2, c=3, d=4, e=5, f=6, g=7)
dplyr::select(df, a:c, f:g)
a b c f g
1 2 3 6 7
我不确定我的答案是否高效,但我认为这至少可以给你一个解决方法,以防你需要使用 data.table
。
我的建议是将 data.table
与 cbind
结合使用。因此,您可以拥有:
df <- data.frame(a=1, b=2, c=3, d=4, e=5, f=6, g=7)
multColSelectedByName<- cbind(df[,a:c],df[,f:g])
#a b c f g
#1: 1 2 3 6 7
df[,f]
,那么这一列的名称将类似于V2
而不是f
。在这种情况下,可以使用以下方法:multColSelectedByName<- cbind(df[,a:c],f=df[,f])
col1:col5
语法可以出现在几个地方,我不知道您指的是哪一个。 - Frankdplyr
库中的select(df, col1:col5, col27:col30)
可以完成此任务。 - user2110417