如何删除 r 中的列(附示例)
通常,您可能希望从 R 中的数据框中删除一列或多列。幸运的是,使用dplyr包中的select()函数可以轻松完成此操作。
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:删除范围内的列
以下代码显示如何删除从“position”到“bounces”范围内的所有列:
#remove columns in range from 'position' to 'rebounds'
df %>% select(-(position:rebounds))
player
1 a
2b
3 tbsp
4d
5th
示例 4:删除包含表达式的列
以下代码显示如何删除所有包含单词“points”的列
#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 执行其他常见操作: