我知道我可以使用 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.
更多推荐
如何组合两列基于两列的数据框?
发布评论