【发布时间】:2018-04-11 15:59:44
【问题描述】:
简单的问题,但我似乎找不到答案:
我有两个名称重叠的列表。对于给定名称,两个列表将始终具有相同的值,如下所示:
list1 ->
$col_a
[1] "a"
$col_b
[1] "b"
$col_c
[1] "c"
list2 ->
$col_b
[1] "b"
$col_c
[1] "c"
$col_d
[1] "d"
将它们组合起来,如this answer,给了我以下信息:
$col_a
[1] "a"
$col_b
[1] "b" "b"
$col_c
[1] "c" "c"
$col_d
[1] "d"
相反,我想:
$col_a
[1] "a"
$col_b
[1] "b"
$col_c
[1] "c"
$col_d
[1] "d"
我该怎么做?
【问题讨论】:
-
?modifyList.. -
你的意思是
lst <- c(list1, list2); lst[!duplicated(lst)] -
@rawr,我每天都学到新东西。坦率地说,我从没想过要寻找那个功能,但它的实用性是一成不变的。
-
@akrun,效果很好,谢谢
-
您说“两个列表对于给定名称将始终具有相同的值”,但它们不会对于两个不同的名字?如果不是,那么@akrun 的建议可能不是您想要的。例如,对于
list1 <- list(a = 1)和list2 <- list(b = 1),结果为list(a=1)。而我在下面的回答在这种情况下给出了list(a = 1, b = 1)。
标签: r