gpt4 book ai didi

从列表中删除重复的元素

转载 作者:行者123 更新时间:2023-12-04 22:56:11 25 4
gpt4 key购买 nike

我有一个 listcharacter vector s:

my.list <- list(e1 = c("a","b","c","k"),e2 = c("b","d","e"),e3 = c("t","d","g","a","f"))

我正在寻找一个 function对于任何 characterlist 中出现不止一次的 vector s(在每个 vector中一个 character只能出现一次),只会保留第一次出现。

因此,此示例的结果列表将是:
res.list <- list(e1 = c("a","b","c","k"),e2 = c("d","e"),e3 = c("t","g","f"))

请注意,整个 vector 是可能的。在 list被消除,因此结果 list 中的元素数不一定必须等于输入 list .

最佳答案

我们可以unlist list ,得到一个逻辑 list使用 duplicated并根据逻辑索引提取“my.list”中的元素

un <- unlist(my.list)
res <- Map(`[`, my.list, relist(!duplicated(un), skeleton = my.list))
identical(res, res.list)
#[1] TRUE

关于从列表中删除重复的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45318034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com