我在r中有两个数据格式
df1
NO QC1 QC2 QC3 Total
123 8 8 8 24
124 9 8 8 25
125 9 9 9 27
df2
NO QC1 QC2 QC3 Total
123 7 7 7 21
124 9 10 8 27
125 10 10 10 30我想把上面的数据和总数进行比较。有最高总数的任何一行都将保留。我想要的数据格式如下
NO QC1 QC2 QC3 Total
123 8 8 8 24
124 9 10 8 27
125 10 10 10 30NO列在两个数据格式中都是唯一的。我怎么才能在R里做到呢?
发布于 2017-07-13 11:16:58
我们可以使用pmax在具有相同维度的两个数据集之间获得元素级的max。
pmax(df1, df2)
# NO QC1 QC2 QC3 Total
#1 123 8 8 8 24
#2 124 9 10 8 27
#3 125 10 10 10 30如果有多个数据集,请将其放在list中,然后在do.call中使用pmax
do.call(pmax, list(df1, df2))如果我们只是比较“总计”一栏,也许
t(sapply(seq_len(nrow(df1)), function(i)
if(df1$Total[i] > df2$Total[i]) df1[i,] else df2[i,]))https://stackoverflow.com/questions/45079014
复制相似问题