gpt4 book ai didi

R:检查向量的多个元素是否出现在字符串向量中

转载 作者:行者123 更新时间:2023-12-01 09:48:49 24 4
gpt4 key购买 nike

我正在尝试创建一个函数来检查一个向量的所有元素是否出现在一个字符串向量中。测试代码如下:

test_values = c("Alice", "Bob")
test_list = c("Alice,Chris,Mark", "Alice,Bob,Chris", "Alice,Mark,Zach", "Alice,Bob,Mark", "Mark,Bob,Zach", "Alice,Chris,Bob", "Mark,Chris,Zach")

我希望此输出为 FALSE TRUE FALSE TRUE FALSE TRUE FALSE

我首先想到我可以在命令 grepl(paste(test_values, collapse='|'), test_list) 来获取字符串中 Alice 和 Bob 两者 的时间,而不是其中任何一个出现的时间,但我无法获得正确答案。

我也不想使用命令:grepl(test_values[1], test_list) & grepl(test_values[2], test_list) 因为 test_values 向量将动态变化(长度从 0 到 3 不等),所以我正在寻找可以考虑到这一点的东西。

最佳答案

我们可以使用 Reducegrepl

Reduce(`&`, lapply(test_values, grepl, test_list))
#[1] FALSE TRUE FALSE TRUE FALSE TRUE FALSE

关于R:检查向量的多个元素是否出现在字符串向量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42655283/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com