2013-07-12 57 views
2

我想创建一个新系列,其中包含最低(当天最低)/(前一天关闭)。那么,我首先筛选天每个条件:熊猫:如何合并时间序列和互补日期?

a=low['SPY'][low['SPY']<close['SPY'].shift(1)] 
b=close['SPY'].shift(1)[low['SPY']>=close['SPY'].shift(1)] 

现在,A和B都具有“洞”:

a: 
2013-06-21 16:00:00 1577.70 
2013-06-24 16:00:00 1560.33 
2013-06-28 16:00:00 1601.06 
2013-07-02 16:00:00 1606.77 

b: 
2013-06-25 16:00:00 1573.09 
2013-06-26 16:00:00 1588.03 
2013-06-27 16:00:00 1603.26 
2013-07-01 16:00:00 1606.28 

如何连接A和B,使我得到一个背一个时间序列正确的索引?

我试过所有变化pd.concat(或创建与orginial指数C系列和合并就可以了),但它始终只是追加和预期不会合并。

非常感谢!

回答

2

为什么不sort_index做附加/ CONCAT后?

In [11]: a.append(b) # equivalent to pd.concat([a, b]) 
Out[11]: 
2013-06-21 16:00:00 1577.70 
2013-06-24 16:00:00 1560.33 
2013-06-28 16:00:00 1601.06 
2013-07-02 16:00:00 1606.77 
2013-06-25 16:00:00 1573.09 
2013-06-26 16:00:00 1588.03 
2013-06-27 16:00:00 1603.26 
2013-07-01 16:00:00 1606.28 
dtype: float64 

In [12]: a.append(b).sort_index() 
Out[12]: 
2013-06-21 16:00:00 1577.70 
2013-06-24 16:00:00 1560.33 
2013-06-25 16:00:00 1573.09 
2013-06-26 16:00:00 1588.03 
2013-06-27 16:00:00 1603.26 
2013-06-28 16:00:00 1601.06 
2013-07-01 16:00:00 1606.28 
2013-07-02 16:00:00 1606.77 
dtype: float64 

为了提高效率大熊猫默认不排序,并需要明确要求。

+0

谢谢,我想我只是瞎了! – jpdus