【问题标题】:R - how/whether to use mapply for a nested loop?R - 如何/是否将 mapply 用于嵌套循环?
【发布时间】:2021-10-29 18:29:13
【问题描述】:

我试图弄清楚如何避免使用嵌套的 for 循环或 lapply 来处理嵌套列表。如何调整下面的 mapply 函数或使用另一个 base r 函数来提取我正在寻找的 TRUE 值?

#data
l = list(a = list(2, 3, NA, 5, 1), b = list(4, 3, 3, 5, 2), c = list(5, 1, 3, 2, 4))

#how can I avoid a nested lapply
lapply(l, function(y){
  lapply(y, function(x){
    is.na(x)
  })
}) %>%
  unlist() %>%
  any()

#my attempt - I am getting the result I want but I beleive this is the incorrect implementation
mapply(function(x,y) is.na(x), l) %>%
  unlist() %>%
  any() 

【问题讨论】:

  • 您到底期待什么。检查您的列表中是否有任何 NA 或获取 NA 的索引?喜欢which(is.na(unlist(l)))

标签: r lapply mapply


【解决方案1】:

这样就可以了:

any(is.na(unlist(l))) 

或者你想要更多?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-21
    • 1970-01-01
    • 2020-12-10
    • 2021-11-24
    • 1970-01-01
    • 2018-03-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多