我在R环境中有两种类型(比如a和b)的数据帧,每种都有20年。我试图在R中编写一个循环,这样我就可以将类型a中的第一个数据帧与类型b中的第一个数据帧合并为一个特定的变量。
我的环境中有a1,a2,...,a20和b1,b2,...,b20,我尝试合并的公共变量是ID。我试过下面的代码,但我猜这个问题是在我定义x和y的合并函数中。
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类型的信息。任何帮助将不胜感激,如果存在相同的问题,请指出我。
这个怎么样:
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))