首页 > 解决方案 > 根据最低值从两个矩阵中选择?

问题描述

我有这些:

mat1 <- matrix(runif(100),ncol=5)
mat11 <- matrix(runif(100),ncol=5)

mat2 <- matrix(runif(100),ncol=5)
mat22 <- matrix(runif(100),ncol=5)

让我们举个例子:

我的输出 2 个矩阵res1取值mat1mat2对应于 and 之间的mat11[1,1]最低mat22[1,1]值,并将这个最低值返回为res11

例子 :

  > mat1[1,1]
          [1] 0.09302976
  > mat11[1,1]
          [1] 0.8775101
  > mat2[1,1]
          [1] 0.6785858
   > mat22[1,1]
          [1] 0.8857934

所需的输出:

       res1[1,1]= 0.09302976# was selected because the corresponding mat11 value (0.8775101) was lower than corresponding value to mat22[1,1] 
       res11[1,1]= 0.8775101

如何将此应用于整个矩阵?

标签: r

解决方案


我们可以用pmin

pmin(mat1, mat11)

或者如果它与另一个矩阵有关

ifelse(mat11 < mat22, mat1, mat2)

推荐阅读