R:从所有嵌套列表中删除相同的条目

时间:2018-04-04 14:30:18

标签: r nested-lists

给出一个这样的嵌套列表:

list_original <- list(list1 = list(foo = 1, bar = 2), list2 = list(foo = 1, bar = 2))

如何从所有嵌套列表中删除相同的名称条目。例如,从foo中的所有嵌套列表中删除list_original条目,以获得此结果:

list_final <- list(list1 = list(bar = 2), list2 = list(bar = 2))

实际上我需要从超过100000个嵌套列表中删除条目。

谢谢!

1 个答案:

答案 0 :(得分:2)

使用lapply将每个列表中的foo设置为NULL

<强>代码:

list_original <- list(list1 = list(foo = 1, bar = 2), list2 = list(foo = 1, bar = 2))
list_final <- lapply(list_original, function(x) {
  x[["foo"]] <- NULL
  x
})
list_final

<强>输出:

$list1
$list1$bar
[1] 2


$list2
$list2$bar
[1] 2