如何组合两列基于两列的数据框? [英] How do I combine two data-frames based on two columns?
本文介绍了如何组合两列基于两列的数据框?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道我可以使用 plyr
及其朋友组合数据框,还可以使用 merge
,但是我不知道如何根据两列将两个数据框与多个列进行合并?
I know I can use the plyr
and its friends to combine dataframes, and merge
as well, but so far I don't know how to merge two dataframes with multiple columns based on 2 columns?
推荐答案
请参阅?merge
,其中指出:
By default the data frames are merged on the columns with names they both have,
but separate specifications of the columns can be given by by.x and by.y.
这显然意味着 merge
将合并数据基于多列的框架。从文档中给出的最终示例:
This clearly implies that merge
will merge data frames based on more than one column. From the final example given in the documentation:
x <- data.frame(k1=c(NA,NA,3,4,5), k2=c(1,NA,NA,4,5), data=1:5)
y <- data.frame(k1=c(NA,2,NA,4,5), k2=c(NA,NA,3,4,5), data=1:5)
merge(x, y, by=c("k1","k2")) # NA's match
此示例旨在演示使用无与伦比的
,但它也说明了使用多个列的合并。您还可以在 x
和 y
中使用 by.x
和 by.y
。
This example was meant to demonstrate the use of incomparables
, but it illustrates merging using multiple columns as well. You can also specify separate columns in each of x
and y
using by.x
and by.y
.
这篇关于如何组合两列基于两列的数据框?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文