我想要将多个数据框合并在一起(因为如果你只处理一个,很多操作似乎更容易,但如果我错了,请纠正我)。
当前我有一个像这样的数据框:
每个ID都在单独的一行上,带有多个单独的测量值。
我还有一个CSV文件,其中包含每个ID的重复测量值,例如:
文件名 = ID_B.csv
我想要的是:
当前我有一个像这样的数据框:
ID, var1, var2
A, 2, 2
B, 4, 5
.
.
Z, 3, 2
每个ID都在单独的一行上,带有多个单独的测量值。
我还有一个CSV文件,其中包含每个ID的重复测量值,例如:
文件名 = ID_B.csv
time, var4, var5
0, 1, 2
1, 4, 5
2, 1, 6
...
我想要的是:
ID, time, va1, var2, var4, var5
...
B, 0, 4, 5, 1, 2,
B, 1, 4, 5, 4, 5,
B, 2, 4, 5, 1, 6,
...
我并不太在意列的顺序。 我能想到的唯一解决方案是将ID列添加到每个CSV文件中,然后通过循环调用merge()
几次来合并它们。 有没有更优雅的方法?
ldply
而不是mdply
,另外通过执行names(filenames) <- ids
可以简化操作。在list.files
中用.
代替getwd()
。除此之外,回答得很好。 - hadley