如何删除列表

时间:2017-05-24 08:20:34

标签: r

我有一个清单:

aa <- list(c(12, 1, 5, 4), c(2, 3, 5), c(6, 4,1))
aa
#[[1]]
#[1] 12  1  5  4

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

#[[3]]
#[1] 6 4 1

我想在aa中删除所有“4”和“5”,并且能够返回以下列表:

#[[1]]
#[1] 12  1

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

#[[3]]
#[1] 6 1

那么有一种简单的方法吗?谢谢。

1 个答案:

答案 0 :(得分:1)

这里有一个使用lapply的简单解决方案:

lapply(aa, function(x) {x[!(x %in% c(4, 5))]})

<强>输出:

[[1]]
[1] 12  1

[[2]]
[1] 2 3

[[3]]
[1] 6 1