R:找到一个变量包含另一个变量值的位置

时间:2018-10-03 17:47:56

标签: r

在R中工作。我想查看一个变量以查看它是否包含另一个变量的内容。这需要逐个元素地完成。

df1 <- data.frame(
         FirstName = c("Jon", "Rob", "Phil", "Andy"),
         BusName = c("Jon's Auto", "123 Taxis", "Plumber Phil", "Handy 
Plumbers")

我尝试了grep / grepl / match /%in%/ sub的许多变体,但这似乎只能将静态字符串与变量匹配。例如

grep("Jon",df1$BusName) would give me TRUE,FALSE,FALSE,FALSE but 
grep(df1$FirstName, df1$BusNAme) gives an error

我想向下扫描并逐个比较它们,以便输出为TRUE,FALSE,TRUE,FALSE

2 个答案:

答案 0 :(得分:4)

我们可以将模式列转换为character。请注意,grep没有向量化。使用pattern

str_detect

答案 1 :(得分:1)

在基数R中,您可以使用<td>Cleaning: <input type="number" v-model.number.lazy="cleaning"/></td> mapply对参数进行“向量化”:

grepl