A:如何删除包含特定字符串的行
您可以使用以下语法删除 R 数据框中包含特定字符串的行:
df[!grepl(' string ', df$column),]
本教程通过 R 中的以下数据框提供了该语法的实际使用的几个示例:
#create data frame df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C'), conference=c('East', 'East', 'East', 'West', 'West', 'East'), dots=c(11, 8, 10, 6, 6, 5)) #view data frame df team conference points 1 A East 11 2 A East 8 3 A East 10 4 B West 6 5 B West 6 6 C East 5
示例 1:删除包含特定字符串的行
以下代码显示如何从数据框中删除团队列中包含“A”的所有行:
df[!grepl(' A ', df$team),]
team conference points
4 B West 6
5 B West 6
6 C East 5
或者我们可以从数据框中删除会议列中包含“West”的所有行:
df[!grepl(' West ', df$conference),]
team conference points
1 A East 11
2 A East 8
3 A East 10
6 C East 5
示例 2:删除列表中包含字符串的行
以下代码显示如何从数据框中删除团队列中包含“A”或“B”的所有行:
df[!grepl(' A|B ', df$team),]
6 C East 5
我们还可以定义一个字符串向量,然后删除数据框中包含 team 列中任何向量字符串的所有行:
#define vector of strings remove <- c(' A ', ' B ') #remove rows that contain any string in the vector in the team column df[!grepl( paste (remove, collapse=' | '), df$team),] 6 C East 5
请注意,这两种方法都会产生相同的结果。