在向量中查找与模式不匹配的序列

乔恩

我想在向量中找到与模式不匹配的元素序列。例如:

pattern <- c(1,2,3,4)
test <- c(5,4,3,6,1,2,3,4,5,3,3,2,1,2,3,4,6,3,7,5,1,2,3,6)

我想在“测试”中找到与“模式”或发生这种情况的索引不匹配的整个序列。所以我想得到类似的结果:

> want
[[1]]
[1] 5 4 3 6

[[2]]
[1] 5 3 3 2

[[3]]
[1] 6 3 7 5 1 2 3 6 

或类似的东西:

> indexes
[1]  1  9 17

你知道如何做到这一点吗?

阿克伦

一种选择是

lapply(scan(text=gsub(paste(pattern,collapse=""), ",",
     paste(test, collapse="")), what="", sep=",", quiet = TRUE), 
     function(x) as.numeric(unlist(strsplit(x, ""))))
#[[1]]
#[1] 5 4 3 6

#[[2]]
#[1] 5 3 3 2

#[[3]]
#[1] 6 3 7 5 1 2 3 6

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章