将包含特定单词的查询标记为R中的特定单词

时间:2017-04-12 18:52:12

标签: r

我的样本数据集看起来像下面。

Queries <- c("apple firm","banana firm","organe firm")
Rank <- c(1,2,3)
data <- data.frame(Queries,Rank)

我有另一个这样的清单。

List <- c("apple","banana")

我需要创建一个新列&#34;标签&#34;。如果查询包含列表中的单词,则应将它们标记为单词。对于这个样本,&#34;苹果公司&#34;将被标记为&#34; apple&#34;,而#34;香蕉公司&#34;标记为&#34; banana&#34;。现在我正在使用grep函数,但我需要手动标记每个单词。我正在寻找一种自动方式来做到这一点。

1 个答案:

答案 0 :(得分:1)

没有循环可能有办法做到这一点,但这是一个潜在的解决方案:

data$Label <- character(nrow(data))

for (word in List) {
  data$Label[grep(word, data$Queries)] <- word
}

是否存在具有多个Label的查询?在这种情况下,这不起作用。