使用R,如何查看单词列表中的任何单词是否包含在一组列中?

时间:2018-10-03 19:44:24

标签: r

我有一个数据集,在这里我想查看列表中是否有许多列中的任何单词之一。

#create list of values that would return "TRUE" in the new column
bug <- c("bee", "wasp", "honeybee")

#create list of columns to be included in the search for the list of desired values
animal <- c("A", "B", "C", "D", "E")

#create a new column called "bug" that lists any row with one of the desired values as "TRUE"
zoo$bug <- (rowSums(zoo[,animal] == bug) >0)

我想创建一个新列来标识包含错误(蜜蜂,蜜蜂或黄蜂)的每一行。这是我尝试过的:

newTB.Name = "Textbox" & i

这仅部分起作用。 Zoo1,Zoo3,Zoo4和Zoo5是正确的,但是当Zoo2(第2行)应显示为“ TRUE”时显示为“ FALSE”。我不知道为什么会这样。

任何建议将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用

之类的东西
rowSums(sapply(zoo[,animal], function(x) x %in% bug))

计算行中的错误,并...

apply(sapply(zoo[,animal], function(x) x %in% bug), 1, any)

查看连续是否有错误。