Python 如何在pandas中连接DatetimeIndex对象?
假设我有3个熊猫对象:Python 如何在pandas中连接DatetimeIndex对象?,python,pandas,datetime,Python,Pandas,Datetime,假设我有3个熊猫对象: 将熊猫作为pd导入 idx1=pd.日期范围('2019-01-01 00:00:00','2019-01-01 01:00:00',频率'5T') idx2=pd.日期范围('2019-01-01 02:00:00','2019-01-01 03:00:00',频率'5T') idx3=pd.日期范围('2019-01-02 00:00:00','2019-01-02 01:00:00',频率'5T') 如何将它们组合成一个索引 我采用的迂回方式是首先将它们转换为,然
将熊猫作为pd导入
idx1=pd.日期范围('2019-01-01 00:00:00','2019-01-01 01:00:00',频率'5T')
idx2=pd.日期范围('2019-01-01 02:00:00','2019-01-01 03:00:00',频率'5T')
idx3=pd.日期范围('2019-01-02 00:00:00','2019-01-02 01:00:00',频率'5T')
如何将它们组合成一个索引
我采用的迂回方式是首先将它们转换为,然后使用函数组合它们,然后将序列转换回DatetimeIndex
:
#这是可行的,但需要在与之间进行类型转换
#中间系列对象:
组合=pd.concat([idx1.to_series(),idx2.to_series(),idx3.to_series()]))
idx=pd.DatetimeIndex(组合的.values)
是否有一种直接的方法来组合熊猫中的索引?尝试使用“union”子句
combined = idx1.union(idx2).union(idx3)
combined=idx1.union\u many([idx2,idx3,…])
尽管Panda关于此功能的文档中说:
加速索引集合联合的一点技巧在我的例子中,这就是我所需要的:
ixfull=pd.DatetimeIndex(np.unique(np.hstack(ix_列表)))
因为联合(a,b)=a+b-交集(a,b)=唯一(a+b)
。详细版本如下:
fastunion=lambda x:np.unique(np.hstack(x))
def ixlist2ix(ix_列表):
ixunion=FASTNUNION(ix_列表)
ixfull=pd.DatetimeIndex(ixunion)
全部归还
对于n
索引,是否有一种更普遍的方法?