Как удалить столбцы в r (с примерами)
Часто вам может потребоваться удалить один или несколько столбцов из фрейма данных в R. К счастью, это легко сделать с помощью функции select() из пакета dplyr .
library (dplyr)
В этом руководстве показано несколько примеров того, как использовать эту функцию на практике, используя следующий фрейм данных:
#create data frame df <- data. frame (player = c('a', 'b', 'c', 'd', 'e'), position = c('G', 'F', 'F', 'G', 'G'), points = c(12, 15, 19, 22, 32), rebounds = c(5, 7, 7, 12, 11)) #view data frame df player position points rebounds 1 to G 12 5 2 b F 15 7 3 c F 19 7 4 d G 22 12 5th G 32 11
Пример 1. Удаление столбцов по имени
Следующий код показывает, как удалить столбцы из фрейма данных по имени:
#remove column named 'points'
df %>% select(-points)
player position rebounds
1 to G 5
2 b F 7
3 c F 7
4 d G 12
5th G 11
Пример 2. Удаление столбцов из списка
Следующий код показывает, как удалить столбцы из фрейма данных, которые находятся в определенном списке:
#remove columns named 'points' or 'rebounds' df %>% select(-one_of(' points ', ' rebounds ')) player position 1 a G 2 b F 3c F 4 d L 5th G
Пример 3. Удаление столбцов в диапазоне
Следующий код показывает, как удалить все столбцы в диапазоне от «позиции» до «отскоков»:
#remove columns in range from 'position' to 'rebounds'
df %>% select(-(position:rebounds))
player
1 a
2b
3 tbsp
4d
5th
Пример 4. Удаление столбцов, содержащих выражение
Следующий код показывает, как удалить все столбцы, содержащие слово «очки».
#remove columns that contain the word 'points' df %>% select(-contains(' points ')) player position rebounds 1 to G 5 2 b F 7 3 c F 7 4 d G 12 5th G 11
Пример 5. Удаление столбцов, начинающихся с определенных букв
Следующий код показывает, как удалить все столбцы, начинающиеся с букв «po»:
#remove columns that start with 'po' df %>% select(-starts_with(' po ')) player rebounds 1 to 5 2 b 7 3 v 7 4 d 12 5 th 11
Пример 6. Удаление столбцов, заканчивающихся определенными буквами.
Следующий код показывает, как удалить все столбцы, оканчивающиеся на букву «s»:
#remove columns that end with 's' df %>% select(-ends_with(' s ')) player position 1 a G 2 b F 3c F 4 d G 5th G
Пример 7. Удаление столбцов по позиции
Следующий код показывает, как удалить столбцы в определенных позициях:
#remove columns in position 1 and 4
df %>% select(-1, -4)
position points
1 G 12
2 F 15
3 F 19
4 G 22
5 G 32
Примечание . Полную документацию по функции select() можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные операции с помощью dplyr:
Как удалить строки с помощью dplyr
Как удалить строки со значениями NA с помощью dplyr
Как выбрать столбцы по индексу с помощью dplyr