删除出现在一个元素及其本身之前的元素 [英] Delete elements appearing before one element and itself
本文介绍了删除出现在一个元素及其本身之前的元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个元素列表(示例中为字母)
I have a list of elements (letter here in the example)
(l <- list(letters[1:2], letters[2:3]))
# [[1]]
# [1] "a" "b"
# [[2]]
# [1] "b" "c"
And another elements
(r <- letters[2])
# [1] "b"
R函数必须删除"b"和"b"本身之前的evrything.
The R function must delete evrything before "b" and "b" itself.
结果将是这样的:
# [[1]]
# [1] "c"
请问有什么主意吗?
提前谢谢
推荐答案
尝试
out = lapply(l, function(x) x[-c(1,which(x == "b"))])
Filter(length, out)
#[[1]]
#[1] "c"
或按照@akrun的建议
or as @akrun suggested
Filter(length,lapply(l, function(x) x[-seq(match("b",x))]))
这篇关于删除出现在一个元素及其本身之前的元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文