r中数据框中的索引列名称

indexing column name in the dataframe in r

> df
  A B C
1 1 2 3
2 4 5 6
3 7 8 9

这是另一个堆栈溢出问题的示例。 实际上,在我的数据集中,有 301 列。

我想知道如何索引列名。 例如,我想提取 A、B 和 C 作为 df 中的第一、第二和第三列。

df[0,1]

我认为它会给我“A”,因为它是第一列的名称。 但结果不是“A”而是

numeric(0)

如何按位置索引我的列名? (数据框中的第 1、2、3 ... 列)

在 R 中索引从 1(而不是 0)开始。其次,df 是获取需要索引的列名称的数据框 names(df)colnames(df).

df <- data.frame(A = 1:5, B = 1:5, C = 1:5)

#To get all the column names
names(df)
#[1] "A" "B" "C"

#To get the 1st column name
names(df)[1]
#[1] "A"

#To get 1st and 2nd column name
names(df)[1:2]
#[1] "A" "B"

#To get column names 1 to 3
names(df)[1:3]
#[1] "A" "B" "C"

#To get column names 1 and 3
names(df)[c(1, 3)]
#[1] "A" "C"

或者通过select()

library(dplyr)
df %>% select(1,3) %>% colnames()