使用公共列

时间:2017-04-05 10:20:23

标签: r

假设我有许多数据帧,它们具有不同的行号(数据),但日期在它们之间是常见的。例如:

DF1:

Date        Index      Change
05-04-17    29911.55    0
03-04-17    29910.22    0.0098
31-03-17    29620.5     -0.0009
30-03-17    29647.42    0.0039
29-03-17    29531.43    0.0041
28-03-17    29409.52    0.0059
27-03-17    29237.15    -0.0063
24-03-17    29421.4     0.003

DF2:

Date    NG  NG_Change
05-04-17    213.8   0.0047
04-04-17    212.8   0.0421
03-04-17    204.2   -0.0078
31-03-17    205.8   -0.0068
30-03-17    207.2   -0.0166
29-03-17    210.7   0.0483
28-03-17    201 0.005
27-03-17    200 -0.0015
24-03-17    200.3   0.0137

还有一个:

DF3:

Date       TI_Price TI_Change
05-04-17    51.39   0.0071
04-04-17    51.03   0.0157
03-04-17    50.24   -0.0071
31-03-17    50.6    0.005
30-03-17    50.35   0.017
29-03-17    49.51   0.0236
28-03-17    48.37   0.0134

我想把它们组合在一起,使用Dates列“作为公共变量”,这种方式只有Dates中常见的那些行。如:

Date    TI_Price    TI_Change   NG  NG_Change   TI_Price    TI_Change
05-04-17    51.39   0.0071      213.8   0.0047  51.39       0.0071
04-04-17    51.03   0.0157      212.8   0.0421  51.03       0.0157
03-04-17    50.24   -0.0071     204.2   -0.0078 50.24       -0.0071
31-03-17    50.6    0.005       205.8   -0.0068 50.6        0.005
30-03-17    50.35   0.017       207.2   -0.0166 50.35       0.017
29-03-17    49.51   0.0236      210.7   0.0483  49.51       0.0236
28-03-17    48.37   0.0134  201 0.005   48.37   0.0134

我只是想知道是否有任何方法,以便我可以一次合并它们而不像merge()函数一次采用DF2和DF2,合并然后结果与DF3合并。

我使用和调整的内容(但浪费):

 myfulldata = merge(DF1, DF2, all.x=T)

0 个答案:

没有答案