如何以元素方式最大化多个向量的值
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))
您好,我想从多个向量中找出每个元素的最大值。例如:
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))