如何组合两列基于两列的数据框? [英] How do I combine two data-frames based on two columns?

查看:120
本文介绍了如何组合两列基于两列的数据框?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道我可以使用 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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆