Как выбрать столбцы по индексу в 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

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.