获取R中多个数据帧的最大值?

我有很多列的巨大数据集,我想在新的 df max_df 中获得每个单元格的最大值

df1=data.frame(
          aa=c(12,13,14,15,16,17,16,17,19),
          bb=c(1,2,3,4,5,6,5,6,7))

df2=data.frame(
          aa=c(NA,12,12,13,14,12,17,14,15),
          bb=c(NA,2.5,3.5,2.5,3,4,5,6,7.5))

df3=data.frame(
          aa=c(13,14,15,16,15,14,10,20,21),
          bb=c(2,3,4,5,6,7,8,9,10))

期望的输出

max_df=data.frame(aa=C(NA,14,15,16,16,17,17,20,21),
                  bb=c(NA,3,4,5,6,7,8,9,10))

注意
代码必须给出所有可用列的最大值 [因此我们不能直接在我们的代码中使用 aa 和 bb]

回答

使用pmax

as.data.frame(Map(pmax, df1, df2, df3))
#  aa bb
#1 NA NA
#2 14  3
#3 15  4
#4 16  5
#5 16  6
#6 17  7
#7 17  8
#8 20  9
#9 21 10


以上是获取R中多个数据帧的最大值?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>