如何以元素方式最大化多个向量的值

How to maximum values of multiple vectors element wise

您好,我想从多个向量中找出每个元素的最大值。例如:

v1<-c(1,1,3,5,10)
v2<-c(10,2,1,1,5)
v3<-c(11,4,2,1,9)
list_of_vectors <- list(v1, v2, v3)

我希望结果是:

vmax<-c(11,4,3,5,10)

我知道有pmax这个功能,所以试了一下。因为我有向量作为列表,所以我这样做了:

do.call(pmax, list_of_vectors, na.rm=TRUE)

但是解决方案有错误。我该如何解决?

假设向量总是相同的长度并且作为单独的元素在列表中,那么

matrixStats::colMaxs(do.call(rbind, l1))
#[1] 11  4  3  5 10

或者你的方式,

do.call(pmax, c(l1, na.rm=TRUE))
#[1] 11  4  3  5 10

哪里

dput(l1)
list(c(1, 1, 3, 5, 10), c(10, 2, 1, 1, 5), c(11, 4, 2, 1, 9))