合并两列矩阵,只保留最高值

Merge two columns of matrix, keeping only highest values

有没有一种合并数据框的两列的简单方法,只保留每行的最高总值?示例:

test <- as.data.frame(matrix(rexp(12, rate=.1), ncol=2))

test

         V1        V2
1  9.945558  5.578294
2  5.141743  5.946177
3 20.078324  9.773958
4  4.222424  2.098666
5 21.787726  3.094479
6 32.177890 11.059363

期望的结果:

[1]  9.945558  5.946177 20.078324  4.222424 21.787726 32.177890

您可以使用pmax执行此操作:

test <- as.data.frame(matrix(rexp(12, rate=.1), ncol=2))

test
          V1         V2  
1  2.9683040  9.8769267  
2 11.5428303  2.4024274  
3  0.6843035 10.5813406  
4  2.5058739  5.2442930  
5  7.4704735  0.2269433  
6 15.7055989 12.3503810  

pmax(test$V1, test$V2)
[1]  9.876927 11.542830 10.581341  5.244293  7.470473 15.705599
apply(test, 1, max)

会完成任务的!