【问题标题】:creating one new vector from a list with 3 vectors in it, but eliminate duplicate values从包含 3 个向量的列表中创建一个新向量,但消除重复值
【发布时间】:2018-09-20 02:00:59
【问题描述】:

我有一个包含三个向量的多个列表的列表

打印出来的:

 [[1]]
[[1]][[1]]
[1] 1 2

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

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


[[2]]
[[2]][[1]]
[1]  4 5

[[2]][[2]]
[1]  5 6

[[2]][[3]]
[1] 4 6

我想创建两个向量:

c(1, 2, 3), c(4, 5, 6)

我也尝试过unique(unlist(x)),它可以工作,但会丢失对列表中位置的引用。我的列表中有多个列表,所以当我应用 unique(unlist(list(x))) 时,它只会创建一个字符串。我想将我的向量 c(1, 2, 3)c(4, 5, 6) 的下一个列表分开

【问题讨论】:

    标签: r list unique


    【解决方案1】:

    你快到了。您只需将您的解决方案分别应用于所有列表。

    lapply(lst, function(x) unique(unlist(x)))
    
    #[[1]]
    #[1] 1 2 3
    
    #[[2]]
    #[1] 4 5 6
    

    数据

    lst <- list(list(c(1, 2), c(1, 3), c(2, 3)), list(c(4,5), c(5, 6), c(4, 6)))
    

    【讨论】:

      猜你喜欢
      • 2011-02-05
      • 1970-01-01
      • 2021-09-03
      • 1970-01-01
      • 1970-01-01
      • 2021-07-16
      • 2018-05-20
      • 1970-01-01
      • 2012-03-13
      相关资源
      最近更新 更多