使用R使用对应表合并数​​据帧

时间:2015-09-02 12:54:01

标签: r merge correspondence

我想根据对应表(mykeys)编写一个合并两个数据帧(mydf1和mydf2)的函数。请考虑以下示例:

mydf1=data.frame(id1=1:5,myvar1=letters[1:5])
mydf2=data.frame(id2=LETTERS[1:5],myvar2=letters[6:10])

mykeys=data.frame(id1=1:3,id2=LETTERS[1:3])

结果应为

# id1 id2 myvar1 myvar2
# 1   A   a      f
# 2   B   b      g
# 3   C   c      h

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我们可以在将数据集放入merge后使用list。根据@CathG的评论和OP数据集中的编辑进行修改。

Reduce(merge, list(mykeys, mydf1, mydf2))