如何在日期时间索引自动填充非匹配行中使用nan连接两个数据帧

时间:2014-03-28 14:51:58

标签: python pandas

x_index=pd.date_range(dt.date(2010,1,1),dt.date(2010,1,5))
y_index=pd.date_range(dt.date(2010,1,2),dt.date(2010,1,6))
x = pd.DataFrame({"AAPL":[1,2,3,4,5]}, index=x_index)
y = pd.DataFrame({"GE": [1,2,3,4,5]}, index=y_index)

结果应为:

            AAPL GE
2010-01-01   1   nan
2010-01-02   2   1
2010-01-03   3   2
2010-01-04   4   3
2010-01-05   5   4
2010-01-06   nan     5

1 个答案:

答案 0 :(得分:9)

由于您没有公共列,因此需要指定使用两个数据帧的索引以及要执行“外部”合并:

In [226]:

x.merge(y, how='outer', left_index=True, right_index=True)
Out[226]:
            AAPL  GE
2010-01-01     1 NaN
2010-01-02     2   1
2010-01-03     3   2
2010-01-04     4   3
2010-01-05     5   4
2010-01-06   NaN   5

[6 rows x 2 columns]