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

时间:2016-04-10 08:40:46

标签: r merge highest

是否有一种简单的方法可以合并数据帧的两列,每行只保留最高的总值?例如:

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

2 个答案:

答案 0 :(得分:1)

您可以使用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

答案 1 :(得分:1)

apply(test, 1, max)

将完成这项工作!

相关问题