在R

时间:2019-03-22 18:42:43

标签: r merge

在我的R环境中,我有2种类型的数据帧(例如a和b),每种类型都有20年。我试图在R中编写一个循环,以便可以通过特定变量合并类型a的第一个数据帧和类型b的第一个数据帧。

我的环境中有a1,a2,...,a20和b1,b2,...,b20,我要合并的公共变量是ID。我尝试使用下面的代码,但是我猜问题出在我定义x和y的merge函数内部。

for (i in 1:20) {
  assign(paste0("ab", i), merge(x="a"&i, y="b"&i, by.x = 'ID', by.y='ID', all.x=TRUE))

}

我想有20个新的数据帧(称为ab1,ab2,...,ab20),并将来自类型a和b的信息一起。 任何帮助将不胜感激,如果存在相同的问题,请务必将其指向我。

1 个答案:

答案 0 :(得分:0)

如何?

for (i in 1:20) {
  assign(paste0("ab", i), merge(x=get(paste0("a",i)), y=get(paste0("b",i)), by.x = 'ID', by.y='ID', all.x=TRUE))