代码之家  ›  专栏  ›  技术社区  ›  Soheil

如何将嵌套列表转换为单个列表?

  •  0
  • Soheil  · 技术社区  · 7 年前

    考虑以下嵌套列表:

    vars <- c("A", "B")
    lapply(1:2, function(x) combn(vars, x, simplify=FALSE))
    
    [[1]]
    [[1]][[1]]
    [1] "A"
    
    [[1]][[2]]
    [1] "B"
    
    [[2]]
    [[2]][[1]]
    [1] "A" "B"
    

    我想转换结果(可能通过使用不同的函数 拉普拉 )以下内容:

    [[1]]
    [1] "A"
    
    [[2]]
    [1] "B"
    
    [[3]]
    [1] "A" "B"
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   MrFlick    7 年前

    似乎您只想删除一级嵌套。你可以用 unlist(..., recursive=FALSE)

    vars <- c("A", "B")
    x <- lapply(1:2, function(x) combn(vars, x, simplify=FALSE))
    unlist(x, recursive=FALSE)
    # [[1]]
    # [1] "A"
    # 
    # [[2]]
    # [1] "B"
    # 
    # [[3]]
    # [1] "A" "B"