你可以使用以下方法来检查R中数据框架的某一列是否包含一个字符串。
方法1:检查列中是否存在精确的字符串
sum(str_detect(df$column_name, '^exact_string$')) > 0
方法2:检查部分字符串是否存在于列中
sum(str_detect(df$column_name, 'partial_string')) > 0
方法3:计算部分字符串的出现次数 在列中的出现次数
sum(str_detect(df$column_name, 'partial_string'))
本教程解释了如何在以下数据框架中实际使用每种方法:
#create data frame
df <- data.frame(team=c('A', 'A', 'A', 'B', 'B', 'C'),
conf=c('East', 'East', 'South', 'West', 'West', 'East'),
points=c(11, 14, 15, 15, 14, 19))
#view data frame
df
team conf points
1 A East 11
2 A East 14
3 A South 15
4 B West 15
5 B West 14
6 C East 19
例1:检查列中是否存在精确的字符串
下面的代码显示了如何检查确切的字符串 "Eas "是否存在于数据框架的conf列中:
#check if exact string 'Eas' exists in conf column
sum(str_detect(df$conf, '^Eas$')) > 0
[1] FALSE
输出结果是FALSE。
这告诉我们,确切的字符串 "Eas "不存在于conf 列中。
注意:我们用regex符号来表示我们要找的字符串的开始(^)和结束($)字符。
例2:检查部分字符串是否存在于列中
下面的代码显示了如何 检查部分字符串'eas'是否存在 于 数据框架的conf 列中:
#check if partial string 'Eas' exists in conf column
sum(str_detect(df$conf, 'Eas')) > 0
[1] TRUE
输出结果是TRUE:
这告诉我们部分字符串'Eas'确实存在于数据框的conf 列中。
例3:计算部分字符串在列中的出现次数
下面的代码显示了如何 计算部分字符串'Eas'在数据框的conf列中出现的次数:
#count occurrences of partial string 'Eas' in conf column
sum(str_detect(df$conf, 'Eas'))
[1] 3
输出结果是3。
这告诉我们,部分字符串'Eas'在数据框的conf列中出现了3次。