答案 0 :(得分:0)
使用grepl()
:
df$t <- apply(df, 1, function(x) grepl(x[1], x[2]))
df
substring string t
1 phone this is my new mobile phone TRUE
2 phones Yes, I have two phones TRUE
3 telephonessss my old telephone FALSE
4 telephone234 telephone FALSE
请注意,此解决方案在行模式下使用apply()
函数。从概念上讲,我们想要检查数据帧的每一行是否包含在字符串中的每个子字符串。
在这里演示:
答案 1 :(得分:0)
您可以使用stri_detect_fixed
包
stringi
首先,我从两个向量
创建了小数据帧substring <- c("phone", "phones", "telephonesss")
string <- c("this is my new mobile phone", "Yes, I have two phones","my old telephone")
df <- data.frame(substring, string)
然后我在名为“t”的数据框中创建了包含值TRUE或FALSE
的新列 df$t <- stri_detect_fixed(df$string, df$subatring)
输出
> df
substring string t
1 phone this is my new mobile phone TRUE
2 phones Yes, I have two phones TRUE
3 telephonesss my old telephone FALSE