通过多组索引对数据框进行子集化

Subset data frame by multiple sets of indicies

如果我有这样的数据框:

    x <- data.frame(col1 = rep(2,10),col2 = rep(3,10)
       ,col3 = rep(2,10),col4 = rep(3,10),col5 = rep(2,10)
       ,col6 = rep(3,10),col7 = rep(2,10),col8 = rep(3,10))

    col1 col2 col3 col4 col5 col6 col7 col8
1     2    3    2    3    2    3    2    3
2     2    3    2    3    2    3    2    3
3     2    3    2    3    2    3    2    3
4     2    3    2    3    2    3    2    3
5     2    3    2    3    2    3    2    3
6     2    3    2    3    2    3    2    3

我想获取第 1-4 列和第 6-8 列的列名。 换句话说是这样的:

colnames(x[1:4,6:8])

我该怎么做?

这样做就可以了:

colnames(x)[c(1:4,6:8)]
#[1] "col1" "col2" "col3" "col4" "col6" "col7" "col8"