【问题标题】:How to get the global max value from a list of matrices containing NA values?如何从包含 NA 值的矩阵列表中获取全局最大值?
【发布时间】:2014-04-01 09:07:17
【问题描述】:

如果矩阵包含 NA 值,如何获得全局最大值?我尝试使用给定的解决方案

R: Getting maximum value from all matrices in a list

max(unlist(lapply(mylist,FUN=max)))

但输出显示不适用。也尝试过

max(unlist(lapply(na.omit(mylist),FUN=max)))

但输出仍然是 NA。

复制:

m1 <- cbind(c(1,NA,3),c(7,2,4))
m2 <- cbind(c(-1,19,13),c(21,NA,5),c(3,3,0),c(4,5,6))
m3 <- cbind(c(1,2,3,NA,5),c(8,18,4,6,7))
mylist <- list(M1=m1,M2=m2,M3=m3)

【问题讨论】:

  • max(unlist(lapply(mylist, FUN=max, na.rm=TRUE)))
  • 非常感谢 :) 你能在回答中发帖以便我接受吗?

标签: r


【解决方案1】:

只需在lapply 语句中添加na.rm=TRUE

max(unlist(lapply(mylist, FUN=max, na.rm=TRUE)))

或在FUN 参数中明确表示:

max(unlist(lapply(mylist, FUN=function(x) max(x, na.rm=TRUE))))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-28
    • 2013-07-31
    • 1970-01-01
    • 1970-01-01
    • 2018-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多