Как выбрать столбцы по индексу в R (с примерами)


Вы можете использовать следующий базовый синтаксис для выбора столбцов по индексу в R:

#select specific columns by index
df[ , c(1, 4)]

#select specific columns in index range
df[ , 1:3]

#exclude specific columns by index
df[ , -c(2, 5)]

В следующих примерах показано, как использовать этот синтаксис на практике со следующим фреймом данных:

#create data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'),
 points=c(99, 90, 86, 88, 95),
 assists=c(33, 28, 31, 39, 34),
 rebounds=c(30, 28, 24, 24, 28),
 blocks=c(7, 7, 5, 9, 13))

#view data frame
df

 team points assists rebounds blocks
1 A 99 33 30 7
2 B 90 28 28 7
3 C 86 31 24 5
4 D 88 39 24 9
5 E 95 34 28 13

Пример 1: выбор столбцов по индексу

Следующий код показывает, как выбрать определенные столбцы по индексу:

#select columns in 1st and 4th position
df[ , c(1, 4)]

 team rebounds
1 A 30
2 B 28
3 C 24
4 D 24
5 E 28

Пример 2: выбор столбцов в диапазоне индексов

В следующем коде показано, как выбрать определенные столбцы в диапазоне индекса:

#select columns in positions 1 through 3
df[ , 1:3]

 team points assists
1 A 99 33
2 B 90 28
3 C 86 31
4 D 88 39
5 E 95 34

Пример 3. Исключение столбцов по индексу

Следующий код показывает, как исключить определенные столбцы по индексу:

#select all columns except columns in positions 2 and 5
df[ , -c(2, 5)]

 team assists rebounds
1 A 33 30
2 B 28 28
3 C 31 24
4 D 39 24
5 E 34 28

Обратите внимание, что это возвращает все столбцы во фрейме данных, кроме столбцов в позициях индекса 2 и 5.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции со столбцами фрейма данных в R:

Как удалить столбцы из фрейма данных в R
Как переключить два столбца в R
Как объединить два столбца в один в R