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

查找列表中对象的位置号

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

    我的名单如下:

    list(c(TRUE, FALSE), TRUE, FALSE)
    

    该列表仅包含一个具有 TRUE ,所有其他的都是 真的 和 FALSE . 我想算出 真的 唯一的问题,在这种情况下,答案是 2 .

    听起来很简单,但到目前为止我失败了。

    有什么解决办法吗?

    1 回复  |  直到 7 年前
        1
  •  6
  •   G. Grothendieck    7 年前

    使用 Position 这样地:

    L <- list(c(TRUE, FALSE), TRUE, FALSE) # test data
    Position(isTRUE, L)
    ## [1] 2
    
        2
  •  3
  •   Ronak Shah    7 年前

    在 purrr 我们可以使用 map_lgl

    lst <- list(c(TRUE, FALSE), TRUE, FALSE)
    which(purrr::map_lgl(lst, all))
    #[1] 2